En tu caso lo que creo que debes hacer es cambiar el DataSource del Grid.
El DataSource creo que está unido a muchas eventos del DataSet para ir modificando todas las dependencias.
Código:
DBGrid <---> DataSource1 <---> DataSet1
DataSource2 <---> DataSet2
DBGrid <-X-> DataSource1 <---> DataSet1
|
+--> DataSource2 <---> DaSet2