All the suggestions are valid, and the reason the DRO's do not work is that there is no feedback from the motors to Mach 3, in fact Mach 3 is not counting where the motors are, but where it THINKS they should be after it has put out a ceratain number of pulses.
I can see that, to set position before commencing a program, it would be useful - and I would move the tool using MDI commands - e.g. G0 X0, flick off the X drive and manually adjust the X axis to the 0 position and turn it back on - thus avoiding the problem with no feed back.
Having said that, if you look at config, you can set up your jogging to make very small corrections, I have mine to do 1,2,3,4,5 then 10.20.30.40 and 50 thousanths of an inch, so can ajust to the nerest thou (Although I am metric now, so convert to mm's). It takes a little bit of setting up, but is very useful.