Bueno si yo tuviera que resolver eso, lo haría recorriendo la grilla. Ejemplo:
Código:
For Each dgvRow As DataGridViewRow In Me.dgAsientos.Rows
'fecha es el nombre de la columna de la grilla que le has asignado
dgvCell = dgvRow.Cells("fecha")
If dgvCell.Value > fecha_nueva Then
MsgBox("fecha mala")
End If
Next