WTH can't I customize my calendar entities?

You need a unique_id to be able to change the icon and name etc of any entity but with calendar entities using custom_calendars you can’t change any settings.

homeassistant:
  customize:
    calendar.garbage:
      icon: mdi:trash-can
    calendar.recycle:
      icon: mdi:recycle
    calendar.yardwaste:
      icon: mdi:pine-tree
    calendar.work_holiday:
      icon: mdi:calendar-heart

Custom as in a custom integration? If yes, you have to take this up with them. Otherwise you can customize anything via yaml with customize.yaml.