Fix broken cropping with upscale=False

Currently, images don't crop at all when upscale=False - this is because they are already scaled ready for cropping, so `factor` here is always 1.0. We could change the `>=` to just `>`, but then there'd still be the problem that, say, a 400x300 image with crop geometry 300x400 would end up bigger than the crop box, so I think the solution below is best.