По-моему, нет большого смысла регистрировать новый класс окна ради такой маленькой задачи, как ввод пароля.
Лучше в обработчике WM_CREATE главного окна вызвать DialogBoxParam (или CreateDialogParam для немодального диалога).
На счет edit-а не знаю, возможно, указаны неправильные стили окна.
В любом случае, дочерние окна не предназначены для пользовательского ввода.
А код нормальный, только немного "сплюснутый" (воздуха по вертикали не хватает).
Блоки case лучше оформлять как-то по-другому, чтобы не забыть про break.
И еще хорошо бы придерживаться согласованного стиля именования — если одно окно называете hMainWnd,
то и второе должно называться hLogonWnd, а не LogonWnd.