Amazon is a special case. They don't care about compatibility, since they're building a very focused, special-purpose platform of their own. Like the original iPhone, the Kindle is attractive enough that people will buy it without any apps. Android was just a way for them to cut their time-to-market.
Microsoft has a different set of problems. Windows Phone is already shipping, so adopting Android would actually delay the next release. What they need is a stronger ecosystem—more apps to bring users and more users to bring developers. Adopting Android might help them achieve that, but at the cost of ceding control to Google. At the end of the day, why would anyone buy Android from Microsoft instead of Google?
If they can't make a success of Windows Phone, MS would be better off to just can it and provide apps and services to both iOS and Android.
The Kindle Fire is actually quite compatible, though. The launcher/core experience is very different, but the app selection is basically identical. GMS has some nice APIs, but the truth is that most apps (by download count, or by revenue) either don't use them or can configure them out.
The kindle isn't successful because Amazon was able to eject compatibility concerns, it's successful because Amazon was (unlike basically all the other variant Android customizations) able to bring elements to the platform that customers actually wanted, and that these outweighed their desire for interoperability with the Google GMS ecosystem.
According to a recent email I got from Amazon App Distribution: "75% of the Android tablet apps tested by Amazon already work on Kindle Fire without any extra development."
Another fork of Android that makes sense is Firefox OS. They take the Android kernel and drivers to get hardware compatibility, and layer a new set of APIs and apps on top of it. They don't care about compatibility, because they're interested in promoting web technologies rather than selling hardware, promoting services or making money from licensing.
I wouldn't exactly call Firefox OS an Android fork. Android is more than just the Linux kernel, it's also Dalvik and a large set of Java APIs. From an app developer perspective, the language and APIs matter much more than the kernel; Firefox OS is completely different from Android in this regard.
Windows CE was un-competitive with Linux, so they had to go to an NT-derived kernel and "real Windows" userland elements for the core OS. But those are bloaty and suck batteries and need fast CPUs.
I don't think they should exactly adopt Android, but they should, at least, have considered doing something Android-like. Imagine the .NET runtime on Linux. That would be very Android-like, but compatible with .NET languages and the VS toolchain.
Microsoft has a different set of problems. Windows Phone is already shipping, so adopting Android would actually delay the next release. What they need is a stronger ecosystem—more apps to bring users and more users to bring developers. Adopting Android might help them achieve that, but at the cost of ceding control to Google. At the end of the day, why would anyone buy Android from Microsoft instead of Google?
If they can't make a success of Windows Phone, MS would be better off to just can it and provide apps and services to both iOS and Android.