Lo que tendrías que hacer es almacenar en un par de variables externas al evento, los valores de la celda que debas pintar, por ejemplo:
Código Delphi
[-]
type
TForm1 = class(TForm)
...
private
Columna: Integer;
Renglon: Integer;
end;
Y entonces en el evento DrawCell dejas la condición así:
Código Delphi
[-]
if (ACol = Columna) and (ARow = Renglon) then
calendario.canvas.brush.color := clGreen;
De esta manera ya puedes pintar la celda que quieras simplemente asignando valores a esas variables en el momento que quieras.
// Saludos