Каким образом можно сформировать корректно отрабатывающий календарь, в котором будут выводиться дата начала недели, и дата завершения недели? Из осложняющих условий, то что неделя не должна перетекать между годами, а так же между месяцам.
Как пример, привожу свой кусочек кода, в котором считаются даты в диапазоне 2021-01-01 => 2025-12-31, и для каждой даты из списка дата последнего дня недели.

На скриншоте, в выводе данных, выделен промежуток, в котором данные ошибочны, так как в Марте неделя этого месяца должна заканчиваться 2021-03-31. Пробовал варианты выборки по условиям, но к идеальному варианту так и не смог прийти.