Refactor DrawingSurface