There are two possibilities here - the milled part might either be completely the wrong size (measured between two points that actually belong to the milled feature - ie. you get a wing, say, three times larger) or it can be the right size, just in the wrong place. The second case means there must be a problem with the way you zero your work coordinates. The first case could have two causes that I can think of - either wrong units (which should be obvious since a millimetre is nowhere near the size of an inch) OR the wrong value set as steps/mm: either Mach3 is configured with the wrong steps/mm value for your machine, or your machine is actually set up to a different steps/mm value that it is expected to have - which is most commonly caused by DIP switches on the driver PCB being set for a different microstepping setting than one would expect.
The point of which is this: forget the g-code; just move you machine at some arbitrary place, note the value and mark the point, then tell it to go (with the Mach3 manual controls), say, 30mm further and note the new value on the display and new physical position. If it really moves as far as the difference from the original value is, you can forget all about the steps/mm thing, you're fine, you just have to figure out where your 0,0 is and why can't you set it to be in the lower left corner of your material. If, however, your mill moves some other distance, that's something that needs to be solved first.