Questo getIcon non è quello che ti serve. Non serve per caricare una immagine arbitraria scelta dall'utente con JFileChooser. Serve per ottenere la icona che rappresenta un tipo di file (es. per i .txt la classica icona del foglio-documento).
JFileChooser ti fornisce un pathname, se è una immagine la puoi caricare con la API di ImageIO, oppure con uno dei costruttori di ImageIcon oppure direttamente con la API del Toolkit di AWT. Con il solo Java SE altre strade non ce ne sono.
P.S. E ognuna di queste API che ho citato ha caratteristiche differenti e le sue potenzialità e i suoi limiti.
Quindi devi approfondire ...