Bizarrely, this version still chokes in Firefox, implying that the previous demo's horrible performance was not down to the GPU blocking as the rectangles are sent to it.
The test is not fully working because it does not scroll the drawing position. So instead of the map moving when you hit a scroll boundary, it simply stops drawing the top or left edges as the scroll region moves away from the visible window. It's an easy fix, but I think I'll leave it until I find out exactly why Firefox still chokes on this demo.
Progress text file updated with latest experiments and progress today.