It's hard be sure without seeing your code, but this sounds like the kind of problem I would associate with incorrect cell reuse. I tried it with the LargeDataSet sample app, adding
spreadSheet.DefaultRowStyle.TextColor = UIColor.Red;
and everything worked fine, scrolling a cell in and out of view.
Grids uses a cell reuse mechanism, whereby only visible cells are held in memory, on screen or in one or more pools of cells from which the grid can reuse them. Each pool has a reuseIdentifier, so in general you would expect to have a pool for cells styled one way, and another for differently styled ones, depending on the purpose of your styling (or any other distinguishing features).
The error you describe sounds like what I would expect if you had set the text colour of a cell but given it a reuse identifier shared with other cells with a different text colour. Everything's fine while the cell is initially on screen, but when you scroll, it drops back into the pool. Next time it is scrolled into view the grid picks a cell out of the reuse pool, but there is no guarantee that it's the same one you coloured (in fact it's rather unlikely to be that one).
So *if this is the problem in your app* the solution is to use more than one reuse identifier, as the LargeDataSample does with "headerCell" and "bodyCell".