I tried the CVS version of ruby (1.9.0), and found this in file
ruby/ext/tk/lib/tk/canvas.rb:

  def __item_val2ruby_optkeys(id)  # { key=>proc, ... }
    super(id).update('window'=>proc{|i, v| window(v)})
  end
  private :__val2ruby_optkeys

The last line should be __item_val2ruby_optkeys I think, and
with that correction the Canvas example at
http://www.rubycentral.com/book/ext_tk.html works fine.
But where should I send this ? And is it really useful to
send bug reports about the CVS version ?

Sorry if this is completely OT...