Hey,
Check your local client settings.
On iOS i see from xCloud the “calendar” and “contact birthdays” - both from caldav
Additionally when the phone syncs carddav, the phone itself offers its own “contact birthdays” (generated from the cards)
Having both enabled will show double…