The Messaging Client .NET Binding provides an example callback server called sessionreceiver. It creates a thread and calls a session's NextReceiver function. If NextReceiver encounters any kind of exception then that exception goes unhandled.
The proposed fix is to add a SessionException() callback to the interface. Then the NextReceiver is placed in a try-catch block and caught exceptions are sent through the new callback.