Because IPv6 breaks hard if ICMP is filtered. It depends on a bunch of newly allocated message types and replaces things like ARP and (some functions of) DHCP with broadcast ICMP.
There is tons of little crap like this in the low level details of IPv6. "We don't like that people do X, so we will force them to stop"
There is tons of little crap like this in the low level details of IPv6. "We don't like that people do X, so we will force them to stop"