The cost of a new fullly-spec'd workstation + high performance laptop is tiny compared to the salary of good software developers. Managements have a warped sense of how to save money and as a result grossly hurt morale and productivity where it matters the most.
It's not one big pile of money. Business expenditures are treated differently depending on what you spend it on.
My loose understanding is that capex (e.g. hardware) and opex (e.g. salary) are treated differently in a lot of ways. Some of it is taxes, there are deductions available for opex that don't apply to capex, at least in the US. Also, you can cut your expenses on opex to balance your budget (e.g. layoffs), but it's harder to recoup the sunk cost on capex.
Cloud desktops turn some capex into opex. Depending on how many employees you have, it can be a sizeable chunk of change.
I still think it's only worth it in specific edge cases, though.
It almost doesn't. Computers are now cheap enough and developers mobile enough that it holds through all of the developing world, and most of the underdeveloped world.
$3000 every 3 years is not alot of money to spend per head, unless you are considering somewhere with developer salaries in the $10,000 range or something like that.
In my whole career i only had one company that provided windows machines and as expected it was a horrible place to work at. Current client wants to do the same. Coincidentally the place is becoming less desirable to work with.
But the problem isn't Windows or MacOS. It's all the corporate spyware, antivirus, network interception and whatever else they come up with making the machines work like its 1995.