So I switched away from SetSurface back to w.DrawImage due to it working differently in windows and linux, which then allowed for the transparency to work again.
Now for some reason on window the font for the icons is not working but it works on linux. I did a test and manually put text at the pos 10, 10 and that text showed up so it seems windows is not handling that the same either.