From Fix Blank or White Shortcut Icons on Desktop.
To refresh and reset the icons cache,
go to the following folder:
To see the hidden AppData folder, go
to Organize -> Folder and Search
Options -> View tab, and select "Show hidden files, folders and drives", and
uncheck "Hide protected operating system files (Recommended)".
Once inside the folder, delete
IconCache.db. Create a new file named
IconCache.db, and set it to Read Only
attribute in Properties (if the file
is not read only, the cache won’t be
reset). Then restart the computer.
Remove the Read Only attribute of
IconCache.db file, and the icons cache
will be refreshed.
This step will
restore the desktop shortcut icons to
their lawfully icons.
I tried it, and the same behavior is on Vista. Properties of such an icon has the same tabs as the command prompt (cmd), so I think the white page icon is a generic cmd prompt, and Windows treats these as shortcuts to cmd rather than themselves. That's why it's impossible to set their icon.
As another experiment, I created a shortcut to cmd.exe, then modified it to add the parameters of "-k old-prog.com". This time the icon-change worked, but the program didn't ! My conclusion is that the 32-bits cmd.exe cannot run these programs.
I think this is some weird effect of 16-bits emulation on Windows. Apparently the 16-bits cmd.exe doesn't accept icon changes. As 16-bits is now totally abandoned in Windows 64-bits, I don't think there is much point in reporting it to Microsoft.