Something passes your method a Graphics object. You cast it to Graphics2D. So far so good.
Then you load an image from somewhere, somehow. Then you create a new Graphics2D object and draw the image on it. You never display this Graphics2D object to the user, and you never do anything with the Graphics object which was passed to the method.