Microsoft’s attempts to bribe iOS and Android developers has been moderately successful, but this is ultimately a very short-sighted strategy. Yes, it costs money to build for other platforms, but for many small startups the opportunity cost (and distraction) far outweighs any actual cost.
If Microsoft really wants Windows Phone to compete with iOS and Android apps, a better strategy would be to defragment the mobile development landscape. There are, of course, companies already doing this - but of the major players only PhoneGap allows you to target Windows Phone. (Interestingly, Telerik Icenium which runs inside of Visual Studio and is built on PhoneGap/Cordova, doesn’t allow you to build for WP). Many of these other platforms are also effectively compiled HTML 5 applications which is not always the ideal solution for all apps - particularly games.
Instead of throwing money at individual developers, Microsoft should be throwing money at Xamarin. The recent partnership was certainly a step in the right direction, but Xamarin is still very expensive. At minimum, you’re looking at $299 annually per platform. If you want Visual Studio support, it’s $999 per year, per platform, per developer. Worse yet, the discounts announced as part of that partnership don’t apply to BizSpark members - which is exactly the audience they should be trying to attract.
Yes, it would be a bold move - but when you’re playing catchup sometimes you have to make bold moves. If Microsoft offered its world-class IDE with the ability to natively target multiple mobile platforms, I’m sure there would soon be a lot more people developing for Windows Phone - even if that’s not the reason they came.