1. Inconsistent implementation of standards: The implemented versions of RSS and Atom out there makes parsing more of an art than just throwing a library at it as no RSS parsing library out there can handle all the edge cases. (The last time I did a test a few years ago in an hour long sample from one of the RSS firehoses out there pulled up hundreds of custom namespaces and tag names.)
2. XML formatting: Consistently formatted, well formed XML is never 100%, even from by major news organizations. Embedded CDATA means parsing content is a quagmire of double escaping.
3. Inconsistent content: A RSS feed could just have the last few items that have been updated, with just titles or links, or it could be literally all of the content of a blog, jammed into some 20MB+ text file, double escaped and simply enlarged after every new update.
4. Inconsistent unique identifiers and HTTP header responses: Many sites will respond appropriately to requests with a 304 if there are no changes. Many will not. Many sites will give each RSS item a globally unique identifier, many will not. This forces every Reader to simply request the whole doc over and over again, comparing unique items with a blend of logic and magic.
5. Inconsistent support: Most sites that use RSS have no business model attached to it, so it's just sort of an afterthought and may be shut down at any time, and often is.
All this leads to: Massive amounts of wasted bandwidth as bots poll endlessly for updates, wasted processing time parsing unformatted or badly formatted content, wasted storage because of bad IDs and URLS, wasted effort on the user's part dealing with the inevitable errors, and wasted effort on the admin side dealing with an antiquated tech that should have gone away with MySpace.
RSS should be scrapped. Killed. Replaced. Forgotten.