A couple of thoughts...
a) How big is this image? (Pixels & bytes)
b) If you render to an image and then save that image as a JPEG to disk do you still get problems?
c) Are you able to share the source image? If not, could you share if you ran it through some DICOM anonymisation first?
d) In your WinForms code, if you do everything except showing the image, do you still get your AV exception? For example, if you do your new DicomImage(...) call, but then give the GUI some random JPEG to display instead, does it still crash?
I'm trying to see if we can at least isolate the problem to a definite area. It could be that the pixel data being generated by fo-DICOM after decompression is overlapping some other memory. It could be something else in the GUI stack after that.