I’m aware this has been the case since Windows 3.x, you always need an external program to ensure the executable is created with the icon you want. Why?
Please no mentions of Linux and other OSs, I know it’s trivial to do so for them.
Create a shortcut and choose your icon.
I don’t want a shortcut, I want the binary with a different icon. Programs compiled “from scratch” don’t have an icon and a shortcut is useless when a separate person downloads the binary in “the wrong folder”.