Try to debug like this
modify your code in such ( not a big difference in logic )
string appath = HttpRuntime.AppDomainAppPath + @"\";
string imagename = Request.QueryString["ImageFileName"];
string filename = appath + imagename;
Response.ContentType = "image/tiff";
new Bitmap(filename).Save(Response.OutputStream, ImageFormat.Jpeg);
make sure that the image is present in the location. if the image is not available then this will throw the Parameter is not valid
error.
and also check that the values is received from the query string.
..