No I am not your downvoter! I do not have downvoting powers yet, sadly! Probably because nobody agrees with me either haha
I can understand some of your arguments. But I would not be too hasty in believing that everyone wants open source or would agree that open source kernels are better. I don't dispute it! But, a lot of Windows developers wouldn't touch Linux with a barge pole, nor would they even know about any of the BSDs. And there isn't a push in Apple land for open-sourcing the vast swathes of kernel code or supporting APIs like Cocoa or Carbon from developers. They just want the APIs to be available, and to work. Not many people really care about the open source nature of it, I don't think? They do care about the price, but not the open source nature of it. Besides, most developers accept that there is a cost to developing and likely factor in the cost of the IDE and hardware, such as an iPad. The massive success of the iPad and the App Store would indicate that people accept that they need to pay for something (although Xcode is free); the fee to be on the app store and to develop on your own device is real enough.
The massive popularity of C# and the continued sales of Visual Studio (or is everyone using the Express versions???) would also indicate that not that many people care about the new features of languages elsewhere, even if they are really interesting and in open source languages. C# implements enough of their own interesting features to keep them happy, and surely you'd agree that old languages have been around long enough and enough code written in them that has been useful to not mean we should chuck them in the bin? Does that really old bit of C code looking after that telephone exchange really need to be rewritten because the language and program is old? Do we definitely need language innovations? They're interesting and make nerds happy but some would argue that the old languages don't have that many "problems" that need fixing with (yet another) language.
I myself have enough of a job trying to keep up with new language features and innovations and would welcome a slow down in some respects! I want to be able to write code, not necessarily use latest whizz-bang features. (In fact, I'd welcome opportunity to use C++11 features but the Windows compiler at work is VS2010; I have xcode too but obviously can't share code between the two)
I am not sure Microsoft's install base is shrinking as drastically as everyone likes to make out. Sure, non-Windows smart phones are widespread and iPads are popular (sometimes even where BYOD is implemented in an organisation) but in the business world, Exchange + Office still rule, as does Windows Server (despite us opting to use Linux or BSD where we can).
I really think you're in the minority if you think there will be a sudden migration to open source platforms using open source tools and new languages. A lot of developers wouldn't use open source because they consider it "unfinished".
Look at the disdain you'll receive for installing LibreOffice instead of Office from someone used to Office.
And in any case, if Microsoft were suddenly to chuck 30 years of their work in the bin and go all open-source, wouldn't that just transform them into a services company? How could they make money from their fully open-source software other than consultancy on it? Apple certainly hasn't done that; they've made money from building on top of BSD. The BSD licensing means you don't need to give the code back after you've built on top of it, so even if it was BSD code Microsoft suddenly used, they'd be in the same "it's ours! you can't have it" position they are in now, and so would we as external developers (no access to their code). So why would Microsoft do that? How would it benefit them or us?