J'avais pensé à ça au début, mais les images du jeu ne sont pas sur le même serveur que le jeu lui-même.
Le canvas devient donc tainted, et impossible de faire un dataUrl() (cross-domain restrictions).
Du coup, je reconstruit une page HTML (head minimal, CSS du jeu, et un body contenant le DIV du rapport seulement). J'envoie compressé cet HTML sur mon serveur, un coup de Phantomjs pour en faire un aperçu via WebKit et je retourne le PNG résultant. C'est tordu, mais je n'ai pas trouvé mieux à cause du cross-domain