It is a simple matter to flip, skew, stretch, push, or pull an image. As with any distortion, when the image is enlarged new pixel information must be invented by upsampling. As downsampling yields higher quality information than upsampling, for the highest quality, favor making things smaller rather than larger. At times this may mean making your original scan larger than your expected final image size. Non-linear transformations are much more challenging.
Complicated surfaces cause quantum leaps in the complexity.
Here the reflected image begins to make great transformations as it conforms to the surface. Some surfaces distort images to the point where they are reduced to pattern and texture. The surface of liquids, for instance, do not conform to an underlying shape and are changeable, so many times a distortion with an appropriate texture will work. For everything but the simplest and crudest transformations, the Smudge tool is inadequate. It's slow, cumbersome, and seriously degrades image quality.