That is because of how you structured your IF statements.
5th code line:
If Cells(i, 5) < Cells(i, 4) Then
When this condition is not met, then the code skips to code line 12, thus skipping the other IF statements.
Here is your code, where each IF statement is handled one after the other:
Dim lr As Integer, i As Integer
lr = Cells(Rows.Count, "d").End(xlUp).Row
For i = 2 To lr
If Cells(i, 5) < Cells(i, 4) Then Cells(i, 5).Interior.Color = vbRed
If Cells(i, 6) = Cells(i, 4) + 69 Then Cells(i, 6).Interior.Color = vbYellow
If Month(CDate(Cells(i, 6))) = Month(Date) Then Cells(i, 6).Interior.Color = vbRed
The best way to check what is going on with your code is by placing your cursor somewhere in your code and then press F8 to go by each code line. By pressing F8 multiple times you can check where in your code it deviates from what you had in mind.