Your surface already has a 2D parametrisation, also known as a uv map. So all you really need to do is drop the function into any 3D app out there assign the texture on the surface and render.
For practical purposes it may be good to use something like Mathematica see this manual entry (last basic entry is the same case just different parametric surface). But i do not see a big problem doing this in most of the 3d apps I have used (Maya, 3DS Max, blender, Modo Creo, solidworks etc, though not sculping apps like mudbox).
Image 1: Mathematica rendering multi sampled (source)
This is also relatively easy to program yourself with say webGL, good starter project into 3D graphics. A simple shader call on a planar mesh.
But how to use a 3D app is not really in scope of graphic design (Design is not the same thing as how a app is used). Besides you do not even mention what app you are intending to use.