Когда вы установите значок exe, WPF будет использовать его для всех создаваемых вами Windows. Однако в режиме отладки он этого не делает - это потому, что «точкой входа» для вашего процесса является .vshost.exe, а не ваш exe. Но если вы используете Ctrl + F5 (запустить без отладки), вы должны найти все Windows получить значок EXE. Вам не нужно устанавливать его в каждом окне.
Чтобы заставить его работать должным образом в режиме отладки, я обычно устанавливаю стиль, который я применяю к каждому окну, который устанавливает значок приложения.