-- I first set my X0, Y0, and Z0 in Mach3, to the top corner of my stock. Then I ran my program and the mill cut my part, exactly as I had expected. Then I jogged the Z axis up, and inserted a new piece of stock material to make another part. I did _not_ re-zero Z; I just pushed "Page Up" to raise the endmill out of the way, and swapped in a new blank piece of material. Then when I ran the program again, the mill happily cut the new part, up in the air above the actual stock, without returning to Z0 to start.
That should not have happened, but without seeing your g-code, it's hard to tell.
Watch the Homing, Limits and Offsets video here: ArtSoft USA - Video Tutorials-- What are the relationships between, and the proper ways to be using, Machine Coordinates, Work Offsets, and Tool Offsets?
It should answer a lot of your questions.