... cuando lei tu mensaje, de hecho creí que te habías equivocado al poner Fila en vez de Columna. Perdón por no haber entendido a lo que te referías.
El DBGrid se corresponde con un DataSet, que obtiene sus datos a la vez de un Query o Table.
Me resulta dificil creer que puedas añadir una fila al DBGrid que no esté incluida a su vez en el DataSet, por lo tanto inevitable hacer un Append.
Creo que lo más fácil, y lo que yo utilizo en dichos casos, es mostrar el total de tus columnas en un Label (o varios Label's según tus necesidades) fuera del DBGrid, y que estén colocados en su posición correspondiente debajo de cada columna del Grid.
Creo que te ahorrará muchos posibles quebraderos de cabeza.