At the moment, in order to provide a custom channel type, you need to config.Gateway().ChannelFactories(...). This entirely overwrites the existing channel factories and the existing http/https channels are internal so the user cannot reference them. If a customer wanted to mix custom custom channels and http/https channels they would need to perform reflection or re-implement the http/https channels themselves.
This feels really heavy handed, especially as we already have ChannelTypeAttribute to allow us to switch channels based on the channel type of the remote site.