displayio has a slow performance case where overlapping dirty rectangles cause pixels to be recomputed more than once. We could do merging or flattening of all the rectangles but that is complicated.