Mouse events on canvas behave strangely. Multiple click events appearently override single click event reactions. Try this:
% package require Tk
% pack [canvas .c]
% bind .c <1> “puts one”
% # now one click
% bind .c <1><1> “puts two”
% # now one click again
% # but expected “one” to be printed.
Same strange behaviour when used <<DoubleClick>> which consists of <1><1>.