The problem is that they prevent other browsers to add these features, because they prevent them from using their browser engines. That way, they prevent these browsers to really compete with theirs (Safari). Because if we could run the real Chrome on iOS, with all the APIs it supports, it's obvious everyone would ditch Safari straight away.
And more importantly, that way they prevent Web apps from competing with native apps. Because obviously, who would use a Web app which can't even send push notifications instead of a native app with all the native APIs it has access to?
So the problem is not Apple not caring enough about the Web. The problem is Apple having anti-competitive behaviour regarding Web browsers and application platforms on iOS.
You'd be running features that both Mozilla and Safari consider harmful and will not implement.
And if I'm not happy with that, maybe I'll switch to Firefox, which doesn't support them while not holding the Web back on many other features and with many unfixed bugs for years, like Apple does with Safari.
That's the advantage of competition, if you're not happy with a product, you can use another one instead.
Most frontend devs that I know making PWAs complain endlessly about the number of exceptions and workarounds for Safari, and indeed it does slow down development and ends up being a justification for contemplating dedicated mobile apps.
Apple doesn't have to do anything, they just have to stop blocking others from doing anything.