The ones that aren't showing need to be renamed I think its caused by regional settings...
Go to the dir you have your picons in browse them to find the ones you are missing as they will be there just not linked to the ident of the channel. Load your them in your favourite graphics program and load up the bouqet on the tv.
In the bouquet arrow down until you find a channel with the missing picon and somewhere on the screen depending upon your image and skin you will see the ident of the channel, it will be a little similar to the filename of the one you have loaded in your graphics prog, do a "file save as" and name the file the same as the ident showing. Go off channel and come back and Voila you've done it.
(If it says you already have a file of that name, do you wish to overwrite? Then... You have another problem, sorry)
A faster way to do it would be to just rename the file in the dir but then you would obviously lose the picon for the original ident unless you copied it first. I prefer using Photoshop as it lets you see what your doing, but remember i'm a complete noob with linux boxes and only taught myself this yesterday so there is probably an even faster way I haven't found yet.
Another thing I found if you run a plugin to install the picons and you have not got a USB stick plugged in, it will dump the picons into... /usr/share/enigma2/picon
You then have to copy the picon dir to either /media/usb/picon or /media/hdd/picon (whatever you have specified in your settings)
I also had to set a new pointer/symlink in the eusr/share/enigma2 dir to point to the new location eg: picon_oled-->/media/hdd/picon
I don't know if this was really required but it works, perhaps someone can enlighten me.
hope that helps someone