According to WHATWG standard, steem:// cannot be used as a uri scheme because it's not whitelisted, and this specification should be using web+steem:// instead.
https://html.spec.whatwg.org/multipage/system-state.html#custom-handlers
I can confirm that steem:// does not work as a protocol handler from within web extensions on Firefox and Chrome, but web+steem:// works just fine.