a) deep hardware integration b) deep platform integration (so much, that it feels like effort is required to not use the services).
I guess it depends on what your bar is for “better than terrible”, but when I look at the richest company in tech that also happens to own the entire stack in play, then “better than terrible” is not remotely good enough.