I used to use this method, but I've started to back away from it, because I often find that it encourages my own Blub programmer nature. Re-implementing an old project immediately shows me the ways in which the new language is worse, but often obscures the benefits.
As a personally embarrassing example, I once returned to Python after three years of heavy Scheme usage. I spent a week porting an almost trivial application and it felt like Python was fighting me every step of the way. Had I not had past pleasant practice with Python, I would have abandoned the language as useless.
Finally, at the end of the week. I realised that I was trying to write Scheme in Python, which work about as well as writing Python in Scheme. Python has for loop and I should be using them.
About twenty minutes later, the app was ported. It wasn't my finest hour.