The deposit approach *is* elegant but there is a bootstrapping issue with it. If the fiat currency holder has only fiat currency and *no* bitcoins then he can't put up the bitcoin deposit to start the Coinffeine-based exchange which he wants to carry out in order to get bitcoins. :-(
Actually, it looks like they have a solution for the bootstrapping issue... see their wiki:
http://www.coinffeine.com/These guys are advancing.. however it is going slower than I'd like. I'm convinced a p2p exchange is key to Bitcoin's stability, future growth and persistent penetration in countries with unfavourable regulations...
I re-read their wiki but couldn't see anywhere that the 'one side has no bitcoin deposit' bootstrapping issue was dealt with...can you give me a more precise pointer?