GtkIconView is like the GtkTreeView, therefore, you can create a GtkTreeModel which will have a string and a pixbuf. Then you set that as the model used by the GtkIconView and then you tell the GtkIconView that those are the "text" and "pixbuf" columns. When you add to that model, it shows up in the icon view.
You may want to read the Ruby/GTK TreeView tutorial to help understand this MVC approach to the tree view and icon view widgets:
http://ruby-gnome2.sourceforge.jp/hiki.cgi?tut-treeview
I haven't worked much with Ruby/GTK so I can't just whip up an example. But the tree view will help as the concepts are the same as far as the data existing in the model and the icon view widget just displays that data.