I think it may be good idea just render surface then stretch that and also translate mouse coordinate.