The problem is that you are using the previous date and then adding one month to it. If you instead take the start date and always add a number of months to it the sequence will be correct:
var start = new DateTime(2020, 8, 30);
for (int i = 0; i < 10; i++)
{
Console.WriteLine(start.AddMonths(i).ToString("dd/MM/yyyy"));
}
The result:
30/08/2020
30/09/2020
30/10/2020
30/11/2020
30/12/2020
30/01/2021
28/02/2021
30/03/2021
30/04/2021
30/05/2021
In your code:
private void LoadDate()
{
DateTime dt=Convert.ToDateTime(textBoxLoanDate.Text);
var monthCounter = 1;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
row.Cells["Date"].Value = dt.AddMonths(monthCounter).ToString("dd/MM/yyyy");
monthCounter++;
}
}