>Is the Windows service code using the same .NET version (esp. System.Drawing.dll). If so then I guess it's down to stepping the code to determine where the results deviate.....
Each application is tied to the framework. The framework uses 4.0.0.0. Also, in each application, the reference in there is also 4.0.0.0.
Where it works, the Platform is set for Active (Any CPU). Where it does not, the Platform is set for Active (x86). But, I do not think that would be a factor.
As far as stepping down the code, the line DrawImage() is where the difference is. When that is executed, it resizes the image. So, this is calling .NET core libraries. I do not know if that is traceable.