Hi,
After writing directly to pixel data, you need to call InvalidateBitmap. On MacOS, it won't work otherwise because the pixel data is not linked to the bitmap handle.
Note that using Canvas property is not recommended as it requires copying from the bitmap handle and vice versa. Also the alpha channel is not well supported by Canvas.
For example, to copy a part, you can directly use the GetPart function. Otherwise if you want functions that are Canvas-like, you can safely use CanvasBGRA property instead.
Regards