Fix crash from freeing backgroundsurface twice in MapRenderer

`backgroundsurface` is already freed in MapRenderer::clearLayers(), which
is called in MapRenderer's deconstructor.