Das waren ja auch nur die direkten Antworten auf die Fragen warum das so ist
Du musst halt auch auswerten ob die aktuelle Zeile/Zelle ausgewählt ist und darauf in deinem OnPaint reagieren.
Ein Beispiel findest du hier
http://www.delphipraxis.net/1128926-post35.html
Kaum macht man's richtig - schon funktioniert's

Zertifikat: Sir Rufo (Fingerprint: ea 0a 4c 14 0d b6 3a a4 c1 c5 b9
dc 90 9d f0 e9 de 13 da 60)