Hi, and welcome to Objo!
Thank you for taking the time to provide such a clear report and reproduction.
You’re not doing anything wrong. I’ve traced this to the Linux GTK rendering adapter used by Avalonia’s WebView component. It copies an RGBA image into a BGRA bitmap without converting the channel order, causing red and blue to be swapped. Objo’s Canvas uses a different rendering path, which explains why the same colour appears correctly there.
Although the defect is in an upstream dependency, Objo uses that adapter, so I’m treating this as an Objo-facing bug rather than closing it as unsupported or user error. I’ve logged it here:
https://feedback.objo.dev/bug/827
Unfortunately, Objo itself doesn’t receive or manipulate the WebView’s pixel buffer, so there isn’t a safe correction we can make inside HTMLViewer. The proper fix belongs in Avalonia’s GTK adapter. I've identified the precise change required and will propose it upstream: convert each row from RGBA to BGRA while copying the rendered image.
I’m sorry this was one of your first experiences with Objo. Your report was exactly what we needed to isolate the problem, and we’ll keep the Objo issue open while we pursue and track the upstream correction. If a test build becomes available, it would also be very helpful if you could confirm the result on your Wayland system.
Thanks again for reporting it.