メッセージ通知ウィンドウでメッセージなどを選択した後にマウスを素早く動かしてウィンドウの外に移動させると選択が残ってしまっていました。TrackMouseEventを使ってWM_MOUSELEAVEメッセージを処理するようにして、マウスがウィンドウの外に出たときには選択をクリアするようにしました。
このAPI自体をはじめて知ったのですが、他にもDnDの開始を判定するDragDetectなんてAPIもあるのを発見。