I think parts of those changes are sensible. You're not missing anything, this is just code that could be improved. I think making tcp:// and mqtt:// synonyms makes some sense.
One thing I would note though, since MQTT-S (soon to be MQTT-SN) exists, you may want to rethink the mqtts:// as an alias for ssl:// ... that's a little more tricky.
One thing I would like to ensure is that whatever scheme is adopted, and your patch may contribute to changing (probably easiest to attach a patch to the existing Bugzilla report)... we should try to ensure that all of our language clients are equally capable of understanding that scheme.
There's no standard MQTT scheme today, although IIRC once upon a time, one of the IBM products did informally support one. I know that some of the other third-party clients out there have adopted their own, too (mqtt+nio etc). There is an IANA-assigned port number but currently officially listed by an old name (1883 = ibm-mqisdp, precursor name to MQTT, 8883 = secure-mqtt .... there's also mqtt listed as assigned to AndySC without a port number, but with a TXT record |Defined TXT keys: topics=<open topic to subscribe to for information>, eg topic=/info|). In my opinion, definitely something to be proposed for wrapping up in the OASIS work.