I can only interpret matters in this way:
1- Kernel that runs the mobile devices is still small in volume.
Which means the rest of the OS is only aesthetic. Anybody can make apps that look good.
MS toolboxes and SDKs will provide portability of codes between platforms.
Which brings me to the next point:
2- Development in the industrial sector, we need to be able to take control from workstations and port it to mobile devices using RF. Very Important to have compatibility.
3- WM has to be less capable than winCE. WinCE has been a leader in User Friendly Embedded OS. You can always compile code directly and easily for use in winCE.
There are many types of embedded devices. Far more than we care to learn of.
None has provided an industry standard. Right now there are Freescale, BlackFin and ARM. Of which the latter has been more successful. for the OS's, uC was the favorable OS.
WM has to be able to overshadow uC but not WinCE.
WinCE has to be for RTUs. WinXP embedded has to be for the SCADA HMI types.
So obviously, there are many types of embedded of OS's and mainly MS has maintained a foothold in every field.
MS is not about software only, it is about the concept of programming, OOP and portability. There is the THEORY that they have worked to preserve in their GUI (a.k.a. windows) that is rarely found at other developer products.
My Opinion, open source is a good attribute to allow the community to participate in a major development, but the problem is in cleaning the code. Linux today is least favorable all due to its quirky keywords that do not resemble anything by function. Toolboxes and SDKs for linux mobile devices are at the mercy of the manufacturing and developing companies.