The biggest problem with software (on OS side) is than you can't use your custom layout in BIOS, LiveCDs or when you need to type password if your hardware is encrypted.
Another problem is games. I use dvorak and all games use qwerty bindings so you need either to remap keys for each game or start game with QWERTY layout. If you forgot to start it with qwerty you need to restart the game, which is was really frustrating for me. It's even more problematical with online games like League of legends and etc.
I see no problem for this feature to be present on even cheapest keyboards. I picked ergodox just for an examle.
In the context of the article we're talking about a highly specialized office environment, where bios/live boot environments etc. do not happen often. There, a software solution is useful and cheap.
In the more general case, and for those people that do not mind carrying their own keyboard everywhere, you are right. Especially since a keyboard that expensive probably lasts for a long enough time...
However, 350$ seems like a lot of money for a problem that should really be solvable at no cost in software...