First, this is just off the top of my head thinking without much research into the idea (lack of time). If way off, sorry.
Is everyone that is having this problem having it on a server that was upgraded to beta19 or 20 from an older version? Did the update properly added the channel_icon_id record for each existing channel (server_id, id in channel_properties)? Would missing channel_icon_id on a subchannel cause it to inherit the setting from the parent channel? ah just noticed the problem is not really related subchannel, maybe just channels ordered after the channel with the icon.
I've never had this problem, but I ran my own sql commands to manually update my database from 18to19 after stopping beta18 and before starting beta19 based on a review of the changes between 2 clean installs of each version. One of those commands was:
Code:
insert into channel_properties (server_id, id, ident) select distinct server_id, id, 'channel_icon_id' as ident from channel_properties ;
DO NOT RUN on a database already run with server beta19 or greater may cause duplicate records.
I can try testing this one day this week if needed.