Average developer salaries for my area are between 60-100k, so if Microsoft can offer 120k+, a lot of (great) devs in my area would probably take that. Local devs get better wages, and companies save some money.
However, they could also outsource to India for even cheaper results, but who knows how well that will go.
So, the question is, will it work any better in Michigan? Quite possibly; the timezone and language differences are much less. Plus, if you worked for Microsoft or Google, you probably wouldn't try to also work for 2-3 other employers at the same time. But, if the issue was simply that remote work impedes good communication, the results will be similar.
My guess, it will sometimes work. I guess we'll find out soon.