MS is not using open-source because it is open-source. The last thing MS wants to do is open up it's source code. Further, modifying the open-source code to fit Window's API would not be much easier than writing from scratch (Linux and Windows do not meet eye-to-eye). Thus, they need to write their own from scratch. Since it is from scratch, it will have teething pains.
Microsoft can't use Apple's implentation either because Apples is written for a different processor, the Windows and Apple OS's API are totally different, Apple isn't about to share code without being heavily compensated and the code would have limited value to Microsoft.
The fact the Apple and Linux already have everything working is irrelevant to MS except at the level of competition and market share. Because it exists elsewhere, people that want it may go to the other OS's and that causes MS to create it in their own products. They can't use either Apples or Linux's implementations inside windows. Thus they are stuck with producing a version on the quick: Producing bad code that will need to be fixed over time. However, they still get to claim that they have it (even if it is bad) and thus limit the marketing damage of not having it at all.
Yes, producing a bad version hurts MS's reputation, but not that much. partially because they don't have a good one to start with. Also, Blue-tooth is relatively new and thus the number of people actually affected will be small at the start and as it increases MS will have ample opportunity to improve their product. People don't care about bugs that don't affect them and thus in the end the damage to MS is relatively small.