No se muy bien porqué quieres modificar ese TRect, pero he cotilleado un poco las definiciones de los eventos y he visto esto:
El evento TDrawGrid::OnDrawCell de define asi:
Código:
typedef void __fastcall (__closure *TDrawCellEvent)(System::TObject* Sender, int ACol, int ARow, const Windows::TRect &Rect, TGridDrawState State);
Eso quiere decir que Rect siempre es un const TRect &.
He probado a usar el TStringGrid dinámicamente y me pasa lo que a tí, no me extraña pues espera una función con el const TRect &
Cuando lo uso como componente visual, es cierto que la definición del evento no requiere const TRect& pero lo que si ocurre es que si modificas el valor del Rect no tiene efecto entre llamada y llamada, a pesar de ser una referencia. Con lo que me inclino a pensar que a todos los efectos es una constante.
Pero repito, no se para que quieres modificar ese valor.
Saludos.