Hey Josh,
Yes, and take the hardness of the material into account too. Using open-loop steppers, which means motors that you send commands to but have no way to check whether they did what they were told, works because steppers are a type of motor that are relatively reliable in doing what they do – until their limits are exceed, which not only means force, but also speed limits.
The next step in reliability would be closed-loop steppers. They have an encoder (usually a glass disk with marks on it that are read by a photo sensor) that reports back every movement to the driver, so if the motor does not execute the steps they way the driver received them from the CNC controller, the driver can try to repeat them and catch up the position, and should this fail, will report an alarm to the CNC controller which can then stop the program.
The highest step towards performance would be servomotors. They are closed-loop too, but they are not stepper motors anymore, but usually normal AC or DC brushless motors. They are used in the industry for reasons of performance (i.e. speed and force). The disadvantage of stepper motors, both open-loop and closed-loop, is that their torque decreases sharply with increasing speed.
But the servomotors need much more sophisticated control algorithms than stepper motors which have built-in output steps.