I think I know how Apple screwed this up. It’s one of those evolutionary path-dependency things. Their iCloud calendar is the child of their old OS X Server calendar (via MobileMe). They bolted a web service atop a server side model. In the old model the client was where different calendar sources were assembled, not the server. iCloud/web is stuck with that model.
So when it comes to Calendar feed subscription assembly happens on the Mac, or it happens on the iPhone. It doesn’t happen in iCloud/web. There’s no UI for adding a feed to iCloud/web because there’s no application model for that.
Which explains Apple’s bizarre instructions for getting a feed to iCloud to iPhone via the Mac. Whoever wrote that up was probably sobbing with despair. I suspect the resulting iCloud/web calendar only gets updated when the Mac updates itself. Let me know if I’m wrong.
I think there are really only two ways to do calendar feeds in the Apple world. One is to add the feed to the iOS device(s) (calendar.app) and the Mac (calendar.app) separately. Forget about seeing it in iCloud/web - that really doesn’t work.
The other is to do the subscription in a Google Calendar and subscribe to that on Mac or iPhone (and give up on iCloud/web). But then you’re going to have to deal with iOS failure to support Google’s CalDAV sync select. So this is a geek-only solution (It’s what my family does).
Here’s how to do it the simple way (iPhone and Mac only, not iCloud/web):