You need to call the method:
month.lower() == 'march'
The method is an object too, and without calling it you are comparing that method with a string. They’ll never be equal:
>>> month="January"
>>> month.lower
<built-in method lower of str object at 0x100760c30>
>>> month.lower == 'January'
False
>>> month.lower == 'january'
False
>>> month.lower() == 'january'
True
solved Why doesn’t if, elif or else work with .lower() in Python? [closed]