Mike, you forgot to allow for the increase in mass of the fly.
Let's see, a train has that has relativistic mass 10 tonnes and is traveling at say 100ms^1. Then it's momentum is 10,000,000 kgms^-1.
So the fly needs a momentum of 10,000,000 kgms^-1.
Now somethings mass at speed is given by m=m0/(1-(v/c)^2)^1/2
We now have 2 unknown's, relativistic mass and speed, I'm too lazy to finish it, one of you can. :P :)