I rather enjoyed it, and at 3 hours wasn't a huge intrusion on my time. This sounds a hell of a lot more attractive than throwing a whole week of my spare time at a company I'm not sold on, and IMO is just as representative.
The extra perk of this approach is also that, assuming you give the same/similar assignment to every candidate, it makes their performance directly comparable.
I think that makes a huge difference. And in the end, I don't care what language you do it in or how you do it, so long as you solve the problem. If I write it in Ruby and you write it in Java, then if it works, I can hire you and your first job will be to port it over ;)
I moved to SF and I love it, but I understand not wanting to move around. I'm resisting moving away from SF for other opportunities...
I wander if Skype does similar thing now, i.e. maybe they preserved some autonomy and did not adopt general MS style puzzle interviews.
This, to me, feels more like a happy medium between whiteboarding and "auditioning". The task was simple enough to be completed in 8 or 10 hours that I could do after work, and I even had some time to add some flair to it for style points.