Well, I can guarantee you that 100% of times I used the above with a stand-alone script (fired with execVM) it worked.
I, too, saw the Biki entry Przemek_kondor is referring to and I ended up removing all exit-s and exitWith-s from the code. I simply rearranged all the code to be inside if-s and then at the end the scripts simply leave.
I haven't actually seen exitWith misbehave, but the Biki is clear on how it shouldn't be used, and I didn't want to introduce a potential problem.
BTW, here's the finished mission with the random starting script, it seems to work well. Feel free to depbo it. The only issue with it is that during briefng, human players are shown in random positions - they're positioned correctly once the mission starts.