Dlaczego tak
Metoda plusMonths() z pakietu java.time zwiększa miesiąc, a gdy taki dzień nie istnieje, przyjmuje ostatni dzień nowego miesiąca. Luty 2025 roku ma 28 dni, więc z 30 stycznia powstaje 2025-02-28. Wyniki z marca dałoby przeniesienie nadmiarowych dni na kolejny miesiąc, czego plusMonths() nie robi, a daty 30 lutego klasa LocalDate w ogóle nie potrafi utworzyć.