Wenn man wirklich nur 3 PWM Ausgäge braucht würde ich auch die Hardware PWM's benutzen.
Braucht man mehr Ausgänge bleibt ( beim ATMEGA 8 ) nur der Weg über Software PWM's - aber das wurde hier ja alles schon geschrieben.

Die Farbsteuerung bei meinem letzten Projekt ( RGB LED Strahler ) hab ich über Look Up Tables gemacht.
Die 3 PWM's laufen mit 256 Schritten auf 2 Timern.
Für jede Farbe wird nun eine Farbtabelle generiert, die 256 Werte umfasst.

Tabelle Rot:
0,1,1,2,2,3,4,5,6,7,8,usw.
An die PWM's werden dann die Werte ausgegeben die in der Tabelle am jeweiligen Platz stehen.
Also Platz 3 = Tabellenwert 2 -> PWM.

Damit kann man für jede Helligkeit eine Farbmischung erreichen, die Weiß entspricht. Damit sollten dann eigentlich die Mischfarben recht gut getroffen werden.

Nimmt man dann eines Tages andere LED's braucht nur die entsprechende Tabelle umgeschrieben werden.

Der Nachteil der Methode ist, das dabei natürlich 3 * 256 Byte für die Tabelle gebraucht werden.
Aber das sollte bei einer so einfachen Anwendung kein Problem sein.

Für die Lichtsteuerung empfehle ich gerne das DMX 512 Protokoll.
Das ist aber für die Ansteuerung nur eines Strahlers schon ziemlich "Oversized".
Wenn es mal mehr Lampen werden sollen würd ich mir an Deiner Stelle das Protokoll mal ansehen, da es dafür schon fertige ( kostenlose ) Software für den PC gibt. Freestyler, DMX-Control, DC-WIN...