Вы можете воспользоваться помощью сборников:
// select row with index that you want (I used 0 for example)
var row = dataGridView1.Rows[0];
List<DateTime> datesInRow = new List<DateTime>();
foreach (DataGridViewCell cell in row.Cells)
datesInRow.Add((DateTime)cell.Value);
var maxDate = datesInRow.Max();
Конечно, более эффективный способ - найти max вручную, тогда вам не понадобится дополнительная коллекция, чтобы сделать это для вас:)