Loading 16 bit PNG using Image.FromFile method

When I save an image as (16bit) PNG and load it again using Image.FromFile method the loaded image data is corrupt. This is also visible in the CVB Viewer. If I convert the PNG to TIF first, using some other tool, the resulting image data is correct. So it appears the FromFile method has some issue with reading a 16 bit png file.

Saving a 16 bit mono stream image:

using (StreamImage image = Device.Stream.Wait())
{
image.Save(“image.png”);
}

Loading the saved 16 bit png image:

Image image = Image.FromFile(“image.png”);

Is this a known issue or am I doing something wrong/unsupported?