Du kannst mit der Image Instanz ein temporäres Bild erstellen und dieses skalieren.
// Laden des Icons aus einer PNG-Datei
ImageIcon originalIcon = new ImageIcon("icon.png");
// Neue Größe für das Icon
int newWidth = 50;
int newHeight = 50;
// Icon auf die neue Größe ändern
Image resizedImage = originalIcon.getImage().getScaledInstance(newWidth, newHeight, Image.SCALE_DEFAULT);
ImageIcon resizedIcon = new ImageIcon(resizedImage);