Because the screenreader is set up and runs on the users local PC, unless you expect users to use whatever unknown-to-them screenreader setup CF happens to choose to run remotely.
Thats 1 option, but I think there is more to explore than that.
E.g. to look at canvas implementation it appears CF delivers a Chromium render to canvas.
Maybe what helps here is standardisation.
That render wasn't sufficient during the browser wars of ole, but isn't a point of contention now because of standardisation.