Du kannst auch in der
WM_NCHITTEST auf HTCLOSE prüfen.
Damit hättest Du schonmal das Event, sobald sich der Mauszeiger über dem Close-Button befindet.
Wenn Du dann noch den Status der linken Maustaste mit
GetKeyState prüfst, sollte das eigentlich funktionieren.