Months between dates
Counts whole calendar months between two dates, with the leftover days shown separately. The sample starts on 31 January deliberately — that is the date that exposes the ambiguity.
How to use the months between dates
A month has no fixed length, so "months between" has more than one defensible answer. Counting calendar months means asking how many times the day-of-month has come round, which from 31 January to 30 April is three months even though the months involved have 28, 31 and 30 days. Dividing total days by an average month of 30.44 gives a different number. This counts calendar months, which is what contracts, subscriptions and notice periods mean. The awkward case is a start date late in the month: 31 January plus one month is 28 February in most conventions, because 31 February does not exist, and that asymmetry means adding a month and then subtracting one does not always return you to the start.
Questions
Because a month is not a fixed length. Counting calendar months from 31 January to 1 March gives one month and one day; dividing the days by 30.44 gives 1.02. Neither is wrong, they answer different questions.