Index: trunk/src/org/openstreetmap/josm/gui/layer/GeoImageLayer.java
===================================================================
--- trunk/src/org/openstreetmap/josm/gui/layer/GeoImageLayer.java	(revision 322)
+++ trunk/src/org/openstreetmap/josm/gui/layer/GeoImageLayer.java	(revision 323)
@@ -10,4 +10,5 @@
 import java.awt.Cursor;
 import java.awt.Graphics;
+import java.awt.Graphics2D;
 import java.awt.GridBagLayout;
 import java.awt.Image;
@@ -20,4 +21,5 @@
 import java.awt.event.MouseEvent;
 import java.awt.event.KeyEvent;
+import java.awt.image.BufferedImage;
 import java.io.File;
 import java.io.IOException;
@@ -509,5 +511,16 @@
 			h = maxSize;
 		}
-		return new ImageIcon(img.getScaledInstance(w, h, Image.SCALE_SMOOTH));
+		return new ImageIcon(createResizedCopy(img, w, h));
+	}
+	
+	private static BufferedImage createResizedCopy(Image originalImage, 
+			int scaledWidth, int scaledHeight)
+	{
+		BufferedImage scaledBI = new BufferedImage(scaledWidth, scaledHeight, BufferedImage.TYPE_INT_RGB);
+		Graphics2D g = scaledBI.createGraphics();
+
+		g.drawImage(originalImage, 0, 0, scaledWidth, scaledHeight, null); 
+		g.dispose();
+		return scaledBI;
 	}
 }
