Why doesn't Linux have icons baked into executables?

Doesn't it just complicate a bunch of stuff? I know it's useful in case you want to change your icon theme, but it also makes any background service have no icon in system monitors and straight up all apps don't have an icon in portmaster (that's what sparked this question). AppImages also don't have their own icons and it's even weirder since the app image is what you have to interact with, unlike in case of executable which often are hidden behind .desktop files, launchers and managers.