"The HTTP HEAD method requests the headers that would be returned if the HEAD request's URL was instead requested with the HTTP GET method. ". So it goes against the HTTP spec.
I sure don't.
And those that do probably aren't careful about HTTP headers either.
So in practice this an improvement for most.
And if you don't like how it works, there are plenty of alternatives to use.
Arguably this is more correct that letting the users declare a separate Handler that can neither guarantee the same headers as the the GET Handler not guarantee that the body is not sent the response.