Services keep sending email, when host is up, but in Downtime state

You can directly apply downtimes to Service objects, too. Even if you use host’s custom variables to assign the rule.
see the docs: https://icinga.com/docs/icinga2/latest/doc/08-advanced-topics/#recurring-downtimes

apply ScheduledDowntime "my-fancy-downtime" to Service {
  author = "icingaadmin"
  comment = "Scheduled downtime for backup"

  ranges = {
    monday = "02:00-03:00"
    tuesday = "02:00-03:00"
    wednesday = "02:00-03:00"
    thursday = "02:00-03:00"
    friday = "02:00-03:00"
    saturday = "02:00-03:00"
    sunday = "02:00-03:00"
  }

  assign where "team" in host.groups
}

I have a parallel thread open right now. On at least one host, Icinga2 still sends notification, even if the services are in a downtime. On another one the notifications are not sent. See PROBLEM notification sent during recurring downtime