I've detected this problem and cleaned it up.
Event Content types only are selectable.
There was a bug with all events becoming products (I developed it on a one event-product site). That has been resolved. To turn an event into a product still requires to tick the box, submit and then re-edit.
The problem is that there is no clear manner in which to define a node as a product (for content types created outside the Ubercart UI and not stored in product_classes table). The best solution I found in the end was to detect the presence of $node->price. If that doesn't exist then the product form doesn't appear (with the SKU etc).