A cloud-based service included in Microsoft 365, delivering scalable messaging and collaboration features with simplified management and automatic updates.
Based on your description, I know there are two main issues for you.
- Each country calendar with custom company holiday. First you can add the holidays for one or more countries as the step of the documents: Add holidays to your calendar in Outlook for Windows - Microsoft Support. For your custom company holiday, you can consider creating a new appointment or meeting then type the name of holiday you want and invite all the users as below.
- Share a calendar with an O365 group or distribution list. First, if you mean shared calendar in an O365 group, the calendar is auto shared to the everyone in the group. Others, if you want to share calendar to a group, you could follow the steps below for share a calendar with a group.
- Right-click on the calendar you want to share and select "Properties."
- Click the "Permissions" tab and then click the "Add" button to add the group you want to share the calendar with.
- In the "Add Users" dialog box, enter the name of the group and click "OK."
- Select the group in the "Permissions" tab and choose the level of access you want to grant them.
- Right-click on the calendar you want to share and select "Properties."
Hope it helps. If you have any questions, please feel free to contact me.