i give up. can't believe how much time i've wasted on this now. i'm not going to try anything else as it will push me over the edge.
i'll accept it might just be the programs i'm using. just as i think i've got it all working either Maxthon or Notepad++ will override whatever i've done. they appear to be fighting for control over my extensions. or, you could say that windows just doesn't work "correctly" when it comes to a few file types (it's trying to be too clever - or these programs are).
.url is meant to open with Maxthon - no problem. let maxthon control the url icon i don't care anymore (i can edit the file type icon directly inside the Maxthon .exe if i want to).
.htm and .html are meant to open with Notepad++ - which they do - until Maxthon decides to take control again. setting Maxthon not to check if it's the default browser helps - but only if i don't try to change the icons for these file types.
.htm/l and .php are meant to have their own distinct file type icons - but as Notepad++ can't remember what it's doing it decides to use the same icon for every file type it's associated with.
the overall problem appears to be this (other than me being stupid enough to try to change file type icons)...
file types associated with Notepad++ can only have distinct icons if they are "disconnected" from Notepad++ using FileTypesMan. they still open with Notepad++ but .htm/l, .php, .txt, .nfo, etc all have their own icons. this would be almost perfect but as these extensions have just been "disconnected", Maxthon somehow realises this and takes control of the .htm and .html extension again.
so, it's a never ending circle of breaking and disconnecting the extensions when there are two programs trying to apply their own "universal" file type icons to these extensions.
one terrible workaround would to be use different editors for .txt, .php, .htm/l as each program would associate its icon to the file type it edits. i can't believe i'm contemplating this but i may just do it. i like Notepad++, it's quick and has the features i need - but now i'm beginning to despise it. and maxthon. and windows 7. and windows vista. and this computer. and this keyboard. and my eyes.