--- ---
Whenever changes are made to the system's icons you must notify Windows of this. It (Windows) alone does not check this, you have to call code manually.
uses ShlObj; ... SHChangeNotify(SHCNE_ASSOCCHANGED, SHCNF_IDLIST, nil, nil); ...