What exactly are you doing to the DataSet? It sounds to me like either:
A) The grid is still holding on to it's old layout. In which case, you should be able to get around this by calling grid.Layout.Reset.
B) Something is wrong with the data source and it doesn't actually have any columns in the child band. But since you didn't say what you are doing, it's hard to tell if this is the case.