One of the best sources of channel icons is http://www.lyngsat-logo.com/ . There, you can browse the available icons and choose those appropriate for your system. However, doing so can be a lot of work (requiring many page hits and a lot of time).
An easier approach is to use channel_icons.pl a new feature in the post-0.20-SVN trunk of MythTV to quickly look up the information. Doing so requires the MythTV Perl bindings (which can be compiled/installed by passing the "--with-bindings=perl" argument to the MythTV configure script). However, the script requires Perl bindings from SVN trunk. So, if you're using 0.20-fixes, please see the MythTV HOWTO.
If you have the appropriate MythTV Perl bindings, checkout the required scripts with:
svn co http://svn.mythtv.org/svn/trunk/mythtv/contrib/icons/master_iconmap
Doing so will create a directory called "master_iconmap" underneath the current directory. The master_iconmap directory contains a file called "channel_icons.pl", which can be used to retrieve channel icon information. See http://www.gossamer-threads.com/lists/mythtv/commits/255099#255099 and "./master_iconmap/channel_icons.pl --usage" for more information.
There is currently (as of 10/08/2007) a bug in either the channel_icon.pl script or the Myth.pm file.
Currently, the easiest work around is to edit the channel_icon.pl script and rename the one call to "load_channels" to "_load_channels".
An example to get all icons installed on a brand new system would be:
./channel_icons.pl --find-missing --rescan --icon-dir /path/to/store/icons