Thanks for voting!
One alternative is to subscribe to iCloud calendar with your Exchange/O365 email accounts or any Outlook account, and then sync the same accounts in Outlook for Mac. See details:Andreasen Tayo Lill commented
it is not possible to transfer calendar and Contacts between Apple iCloud and Onedrive - security reasons and GPDR.
the easy manual way I found is this:
open your Contacts / choose the one and more you wish to transfer, one at a time / open with -choose outlook / outlook pops up and you can save / there you are. but you have to do it one by one. Good practise to clean up your Contacts :-)