Making these changes will not make the grid thread safe. There will be other methods that will fail.
In general, you need to use grid.InvokeRequired checks to make sure you are interacting with the grid on the thread that created it.
Here is a little sample
that uses InvokeRequired checks to force interactions with the grid to be on the thread that created it.