That was a good observation by @mangakissa but he was loading the file first if you look at his code, he was making a direct call to the FormActivate(Sender), which would load the file, then he followed through with the rest to get extra rows, however, when the OnCreate was completed, the OnFormActivate was called once again thus reloading the grid and not performing any steps to add the extra rows.
So this was a case of double loads. IF this was the way it worked in Delphi I would like to know how that worked?