Fred - You have said a lot, but nothing. You have a computer running Mach3, and you have (I assume) connected the printer port of the computer to a milling machine, which, you say, has the original driver boards in it - running the original motors.
Are they motors stepper motors or servos with a feedback readout ??
I assume you have set up the steps per unit correctly. and also tackled the feedback on each axis - and got that as accurate as possible.
How does the machine perform on straight cuts - is it OK - is it accurate.
The problem with cutting circles is the direction of each axis changes twice in the circle, that means Mach3 has to stop all movement on both axis, take up the feedback on the axis that is changing, then start both axies again - and has to do this four times. To keep accuracy, it has to decelerate and accelerate each axis together. If you listen to Mach3 doing feedback, it certainly sounds different to ordinary running. The speed is different and the motor seems hesitant - but it certainly seems to put it on correctly - mine is to within 1 thou.
What I would do is try running without feedback and see what happens. Your circle will be out, but see if the noise and odd behavious is any different.
As far as the zeroing problem is concerned - I take it this a a software zero, not zeroing to swithes. If you are stopping before your program is finished, have you cancelled all offsets before sending the machine to what it thinks is zero???