The tool lengths in the tool table are only used when you are using G43 tool length offsets. But G43 is really only used when you have fixed length tooling, or an ATC.
You're better off exporting separate g-code for each tool, and zeroing each tool before running the code.