The display in most cases is sRGB. It is not possible to display part of the screen (or composited web page) with a different transfer function from the rest. If the display is sRGB, or whatever, a linear buffer/canvas must be encoded (a.k.a gamma corrected) to the display’s transfer function, otherwise the result is completely wrong. You would be displaying the linear data as if it were encoded in sRGB.
Even in native land, access for apps to change the transfer function is limited to full screen apps. How do you propose that a browser pass through just some parts of the displayed web page? If we limit pass through to full screen canvases, how do you cope with blending other page content with or displaying it over the canvas?
I am not saying pass through is a bad idea. I don’t see how to implement it.