Hi!
Ich behaupte jetzt mal ganz frech, das dein Ansatz verkehrtherum ist.
Normalerweise geben die Daten vor, wie die Schriftfarbe ist. D.h. irgendwas in dem jeweiligen TOTimeOverviewData-Objekt sagt: zeig mich rot bzw. grün an.
Das würde man dann beim OnBeforeCellDraw (so in etwa) auswerten und die Farbe entsprechend setzen.
Das würde für dich bedeuten, das du die Auswertung nicht nach der Farbe der Zelle machst, sondern nach dem Inhalt der Daten.
Das wäre
imho eine saubere Lösung.