Handle canceled tasks in the Subscription and MessageBroker.
- Treat canceled tasks like faulted tasks.

#2302
Added another test to verify cancellation handling.