Может помочь последовательный вызов SetWindowLong и SetWindowPos.
Вот что написано в MSDN:
If you have changed certain window data using SetWindowLong, you must call SetWindowPos to have the changes take effect. Use the following combination for uFlags: SWP_NOMOVE | SWP_NOSIZE | SWP_NOZORDER | SWP_FRAMECHANGED.