You can just draw the bitmap onto a new bitmap.
This will also handle the cases of partial transparency, and also not need thousands of p/invokes with the Get/SetPixel (this is very, very slow).
var original = SKBitmap.Decode(inputStream); // create a new bitmap with the same dimensions // also avoids the first copy if the color type is index8 var copy = new SKBitmap(original.Width, original.Height); // we need a canvas to draw var canvas = new SKCanvas(copy); // clear the bitmap with the desired color for transparency canvas.Clear(SKColors.White); // draw the bitmap on top canvas.DrawBitmap(original, 0, 0);