Hi,
it sounds like the Z axis is 'losing steps'. I know it sounds weird, how could it lose a step and yet go still lower, that sounds
like gaining a step doesn't it? In fact either gaining or losing a step or steps have the same effect, depending on how your Z axis is arranged
it might mean it goes higher OR lower.
Try running the program but with the Z axis above the part, 'cutting air', without the spindle running. Does it behave? Now run it again with the
spindle running. Does it behave? Spindles often produce a lot of electrical noise and can affect things like losing steps.
Its also possible that you have the Z axis tuned to agressively and the stepper can't keep up. Try a low maximum velocity in the Z axis tuning page with
an even lower acceleration. If it helps then you know you'll have to work out the reliable limits of your Z axis.
Craig