That's why they log out of the app / turn off their phones instead of canceling rides. So they are just not available in the driver supply and then when they log back in they get surge price.
It seems to me that Uber's counter argument would be that they aren't obligated to offer a contract to all contractors equally. They would further argue that Uber's product is availability of drivers vs the rides themselves (remember they are only the middle men) and that they provide preference (in a binary manner) to contractors who allow them to provide consistent availability.