You could just use a worksheet formula to check. Using VBA though I don't see a problem with your code other than the extra end if. You could make it check both columns in one loop though using:
Private Sub worksheet_CHECKdates()
For MY_ROWS = 2 To Range("H65536").End(xlUp).Row
If Range("H" & MY_ROWS).Value > Range("K" & MY_ROWS).Value Then
MY_CHOICE = MsgBox("date error found in column H/K")
End If
If Range("N" & MY_ROWS).Value > Range("H" & MY_ROWS).Value Then
MY_CHOICE = MsgBox("date error found in column N/H")
End If
Next MY_ROWS
End Sub