A veces, aunque no lo parezca o no se diga, los componentes de siempre (los de la VCL) si cambian y si avanzan.
En concreto en el TDBGrid a medida que han ido apareciendo versiones, han aparecido también propiedades para poder hacer cambios en el componente.
En concreto la que te está afactando a tí, son las del objeto
TColumn, y la propiedad
DrawingStyle del
TDBGrid.
Antes algunas de estas cosas (como la que tú quieres hacer) había que hacerlas utilizando los eventos OnDrawItem, OnDrawDataCell, y similares...
El código que has puesto funciona correctamente, segun el valor de la propiedad
DrawingStyle, aunque no hace falta hacerlo por código, puedes hacerlo desde el Inspector de objetos.