Moin,
in der Tat ist das über eigene TableCellRenderer machbar.
1. Neue Renderer-Klasse anlegen, z.B. MyImageRenderer extends DefaultTableCellRenderer (ist nichts anderes als ein JLabel)
2. Eigene Implementierung (Überschreiben!) der Methode getTableCellRendererComponent (aus dem TableCellRenderer Interface) z.B. mit setImageIcon(deinIconImage)
3. An geeigneter Stelle myTable.setDefaultRenderer(MyLabel.class, new MyImageRenderer());
4. Im TableModel die Methode getColumnClass() überschreiben und für die erste Spalte MyLabel.class zurückgeben.
Ich hoffe, das ist einigermaßen verständlich.