Add_image_size not generating correct size

I think that’s what is supposed to happen in Hard crop mode. If you resize an image to 450px wide and the height becomes proportionately smaller than the cropped height value you give for your image size, then you get the smaller height value. It’s not going to stretch the height and distort your image, I think that would be way worse.

You could try changing the $crop parameter to false, and see if you like the results better.