You came up with wording that made it sounds like entitlement, which Havoc simply pointed out.
"Instead of initially doing the simple thing and having a simple well-known named program...."
There was just no way to create a simple program for doing that without either replicating the already existing implementations or generalizing one of the existing implementations enough to provide an acceptable dependency for a new stand-alone program.
Which naturally lead to "..discussions about dlopening dynamic libraries..." so programs could use the currently prevalent implementation without tightly depending on it.
A natural compromise in the face of a shared goal and limited resources.
"...then nothing happened for a few more years..."
The unfortunate reality was that there were simply to few resources to implement a medium term solution given that he majority of application developers already had access to a launcher framework (i.e. developers using GNOME or KDE libs).
"...until someone eventually wrote xdg-open which did, at least when released, all the hacks that everyone was already having to do themselves."
Being that someone I'd like to emphasis that this was intended to be a short-term stop gap solution because its behavior cannot be guaranteed to be stable (due to delegating to many different tools) nor does it provide most of the features application developer using launcher APIs grew accustomed to.
I find it pretty ironic that "failure of collaboration" comes up in a reply to a posting by Havoc, a person who has put unparalleled efforts into *the* collaboration enabler: D-Bus