I'm brewing up much the same but with a home made computer board reading scales and stepping motors.
The step timer interrupt compares "where I am" with "where I want to be" and steps accordingly.
The "where I am" can change at any moment should a report be received from any of the 3 scale interrupts. (I read them with hardware because any lag will only serve to confuse it).
At the end of an x,y,z stepping sequence it works out the error on all 3 axes. Should any be outside tolerance it doesn't update the "where I want to be" to a new position. This means I get remedial steps to put it back on course.
Questions are, wil it do more remedial steps than moving steps, and, how tight can I put the tolerance
I only have to mount the scales and I can find out