Having to refactor a lot of code to keep up with the changes, even if given enought notice, is a real issue. Developers' time costs a lot of money.
It's annoying on a small scale, and I've been there myself (many times) so I'm sympathetic, but it's also a greater good overall.