Defeats the purpose of using a broker/clearing house, there are products that let you trade on the exchange directly. RH probably figured there's no point in integrating all the way to the end if no one would normally use it.
Same with doing your own clearing, there's complexity involved with clearing and maybe you don't want to implement it all yourself when someone does it better for cheaper.
It's like asking why we don't all program in assembly all the time, or even have the option to mix assembly into our high level code. It's just nice having layers of abstraction that handle the annoying stuff for you, even if there's a minor cost. Why have complexity you don't expect to need?