Nimm am Ende mal das inherited raus, das darf, nach meiner Erfahrung mit Delphi 7 und TJVDBGrid, nur dann aufgerufen werden, wenn Du im dbGridDetailDrawColumnCell nichts selbst machst, also nur für die Zellen aufgerufen werden, für die es keine von Dir implementierte "Sonderbehandlung" gibt.
Eventuell ergänzt Du die Methode aber am Ende auch um einen Elsezweig:
Delphi-Quellcode:
if ( bHandled ) then begin
dbGridTail.DefaultDrawColumnCell( rect_, iDataCol_, col_, drawState_ );
end else begin
inherited;
end;