In the "TK Gotchas" section of this tutorial page you will find the following comment:
if you create a Canvas with Photos in it, it appears to be impossible to destroy them without leaking memory, no matter how many lexical scopes you leave or destroys and deletes you scream at the interpreter. The only work around I found was to load the images in, and simply hide them when not required.
Hopefully a TK guru will post a more concise solution to this problem.
On a related note, Steve Cook has a wonderful set of introductory tutorials related to perl/tk. See his pages for details.