I am dynamically adding data to a cell with the following code:
for(int i = 0; i < matchedSlots.size(); i++) { String title = matchedSlots.get(i).getTitle
By default JTable can render Images. You just need to override getColumnClass() in the TableModel and return Icon.class for 1st column.
JTable
TableModel
Icon.class
Look at Renderers and Editors for more details.