I have had a similar bug, it happened when I used my base to attack the ufo as it was dieing (ie it was dead with I clicked the base to launch). It launched happily while the ufo was still alive.
I haven't looked at the code yet, but I would love to try to fix this. From the outside, it LOOKS like it shouldn't be to hard. (famous last words?)