Прямо сейчас я меняю значок окна с этот код.
Что я хочу сделать, так это получить текущий значок в окне. Затем положите его на холст. Затем поместите другое изображение (значок), затем сохраните его как ico.
Никогда не пробовал, однако последующее должно работать в целом (с большим количеством возни)
WM_GETICON
canvas.drawImage
canvas.mozGetAsFile
Blob
canvas.mozFetchAsStream
nsIInputStream
image/vnd.microsoft.icon
LookupIconIdFromDirectoryEx
CreateIconFromResourceEx
WM_SETICON