If I had to guess, having worked in Cupertino, there is just not enough cohesion across the software teams. Everyone is building in their own little bubbles, and when one team goes down a bad path, your team tries to be overly diplomatic, or can say it's not my problem and now we're stuck with this mess.

Sometimes you need the Jobs at the top of it all telling people it's not working well and they need to get their shit together.