Maybe the image format is one that pre-applies the alpha value.
Have you tried creating and empty image with fully separated channel data, e.g. QImage::Format_ARGB32, then setting the pixel values manually and then checking if they arrive correctly?
Cheers,
_
Bookmarks