Олег, спасибо за идею. Я возвращаю HTCAPTION из WM_NCHITTEST, но само собой меню не появляется. Я остановился на варианте, когда надо использовать GetSystemMenu() и самому потом посылать WM_SYSCOMAND. Вроде работает!
Нет ли у тебя каких идей по поводу моего неотвеченного вопроса о GradientFill? Уперся, и ни туды, и ни сюды...