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.
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.