The difference is that sometimes the date gets recorded as just a day (which the computer thinks of as midnight at the beginning of the day), and sometimes there's a time component recorded as well. For instance, a "Wellness Examination" might get a midnight timestamp, but others might be recorded as happening later in the day. When VetBadger calculates the "month from now" time for comparison against dates that are "coming up soon", it's using the current time to compare against.
So in summary even though the dates might display with the same day, they could fall on either side of "a month from now".