The failure of company A to manage a roll-out does not predict the failure of company B. It just goes to show how badly company A manages their resources.
Or, alternatively, that companies with large codebases face similar issues of complexity and legacy interactions that aren't easy to just throw people/resources at, they just take the time they take in order to get it accomplished and persistence is preferred over alacrity.
This is just an opinion but I'm a big fan of Apple and have been using their machines for a long time. There are just some new conventions that have been introduced alongside hardware that add complexity that I don't think is possible to get right the first time around outside of some pretty minimum functionality. Any time an process needs to be re-thought or redefined, you're basically starting from scratch even if the end results look similar. In the example I gave, Notification Center was something that had to be ported over from iPadOS/iOS (and I'm glad it did as I find it very useful and much more consistent of an experience) but it then needed to be retro-fit to handle applications that weren't originally intended for it. It also needs to deal with notifications in a way that make them consistent so that new users pick up the basics of how it works easily. To me, that's a hard task. I just wish there was a bit more consideration taken towards keeping existing functionality in place, even if it contradicts new paradigms, but that's really a design choice that I just have to disagree with because the alternative is probably better for most people using the machines. If it's not, the analytics will bear that out and they'll change it to the one that I prefer.