I think I have a fix for this. For each blanked out icon:
1. Click on it and then click Cmd + i (an info box will pop up)
2. That should show the icon as you would expect it to look - right at the top of this info popup box
3. Click to get rid of the pop up info box by clicking on the red close
4. Go to the blank icon that you want to restore and click on it and then click Cmd + C to copy it
5. Click somewhere else on your desktop and then press Cmd + V to paste it
6. What you should then see (for e.g.) is the correct icon with (e.g.) Mail 2
7. Click on the blanked out icon that looked wrong, and drag it to Trash - leaving the new icon (labelled 2)
8. Click on your new icon and click File > Rename
9. Rename it back to what you want (e.g. Mail)
You need to do Steps 1 to 3 for EACH blanked out icon. I got lazy and didn't do these steps each time and the fix didn't work.
Hope it works for you.
Tom
Thank you for this post. After upgrading to El Capitan, a bunch of shortcuts I had previously made were missing their icons. I started following your directions and it worked great. I then accidentally found a slightly faster/easier method:
1. Hold Cmd and click on every app that is missing its icon.
2. Press Cmd + i (this will open the info window for every one of the apps).
3. Close all of the info windows.
4. Click twice slowly (not a double-click, but click, pause, click) on each of the app names that are missing icons, as if you were going to re-name them.
As soon as the name turns into an edit box, the icon will reappear. You can just click on the next one without changing the name.