Иконка для главного окна загружается в функции HostWindows.CreateMainWindows (см. первый вызов USER32.LoadIconA в начале процедуры). Если там передать вместо LoadIconA использовать LoadImage, то можно загрузить иконку из файла. Имя файла можно передавать параметрах командной строки.

Не знаю, повлияет ли иконка главного окна на то, что отображается на панели задач. Нужен эксперимент.