Is there a bug anywhere?
The ASCOM specification has properties for the frame width and height but there is no stipulation that the width must be greater than the height.
Then the image data is specified to be a 2D array with the dimensions that were set with the default being the maximum width and height.
If the dimensions of the image array that’s sent to SGP has a height greater than the width then that’s how the image can be expected to be displayed.
“Fixing” this could be tricky, it would be easy the look at the height and width of the image and rotate it if the height was greater than the width but there are snags. First which way to rotate? Second what happens if the user has chosen to use a subframe where the height is greater than the width? How does the system prevent that being rotated? And what about the data that’s saved? Is that to be rotated as well?
One thing that may help to check what the camera is returning is to run the ASCOM Conform application with this camera. That will exercise all the functions of the camera and show very clearly what the frame dimensions are and what the image array dimensions are.