Hmm, that's odd.  I played with it a bit and it looks like this is only a problem when you use `define_method`.  If you use `def` it works just fine.  `define_method` allows you to reduce duplication here (and below) but I don't think the extra cognative overhead of the metaprogramming and `rescue NoMethodError` is worth it -- I'd personally favor using normal `def` and leveraging `defined?(super)`.