Since you are using the GTK port, is it possible that you are trying to fetch the image from the art provider before the application is fully started up? (Before MainLoop is called.) if so, are you able to defer it until just after the main loop starts?
If that doesn’t seem to be the problem then I’m out of ideas and will need a small runnable sample to be able to investigate further.