yep les problèmes de browser, grosse galère ... mes premiers tests php marchaient sans les headers au dessus car j'avais ie5.5. sous ie5, gros plantage
la solution bourrine qui marchera a tous les coups, c'est qu'à chaque fois que tu changes l'image, tu lui donnes un nouveau nom. tu peux rajouter un timestamp de l'heure courante par ex ... si ton image est générée à chaque visite de la page, ce n'est pas un gros problème. sinon il faudra mettre le nom de l'image dans une table sql.
autre chose, qui a l'air de marcher, c'est mettre une url au pif, par ex toujours à base d'un timestamp. ça contournera le cache, par contre je ne garantis ni la compatibilité ni la beauté de la chose
donc si ton image générée s'appelle 'gen.gif', tu mets echo "<img src='gen.gif?$timestamp'>" avec $timestamp = un timestamp unix, ou n'importe quelle string aléatoire.
de cette façon, ton .php génerera à chaque visite (n'oublie pas les headers ci dessus pour que ta page soit rechargée à chaque fois) une 'nouvelle' url, qui pointera en fait tj vers la même image.
c'est absolument infâme, mais ça devrait marcher. ensuite, si tu trouves mieux, balances sur ce forum.