Handling some things in WM_CREATE can cause undesirable results. Because if you pass the window handle to somewhere, it may fail because the window is not created yet. One good example, what can happen is there:
http://cboard.cprogramming.com/showthread.php?t=79130