I have the same problem, the cut is always out between .2 and .4 mm

The steps have been set, there is no steps being dropped.
I set the steps with a 900mm rule, and checked the settings by moving the x axis about 10 times while holding it back with all my strength. still spot on.

I have checked the 6mm bit and I use aspire for the code.
I have made 25mm, 50mm and 100mm square pockets, 25mm 50mm 75mm slots, they are all out 0.2 to 0.4mm

I have tried Mach3 and Uccnc, both the same.

UC300-lpt5 motion controller and HG08 Breakout card
Stepper motors are direct drive, onto 2005 ballscrews (2 on x axis linked not slave), with dial gauges at the x and y homes (just to check)

Any ideas?