I do see it as an overkill wink
Slin's method of using bimap blitting looks more suitable I guess. Just use the blitting and erasing only when needed(even if you are going to do it on multiple tile, do it once at a time, spread the load), and there should be no slowdown.