Out of curiosity, does anyone understand why it was a good idea in the first place to have icons pointing to a DLL instead of having a static icon name or icon id?
Well, the reason for having it was for Control Panel items. In such cases, you'd want the icon in sync with the Control Panel item's. Windows, in general, likes to keep its icons in one place and then reference them from somewhere.