@Charles: I'm thinking that if you did this via a Kickstarter project, you could raise the money to create an intuitive and easy-to-use design feature on your website.
Here's the way it could go. First, the user enters the outer dimensions of the cabinet they want to create (the used can specify units of inches or mm/cm).
Taking the dimensions of the extrusions into account, the system uses the user-provided dimensions to automatically create the outlines/templates for the top, bottom, side, and end panels.
In the case of expert users with access to 3D mechanical CAD packages, these users could take the generated panels and modify them to their heart's content. In the case of novice/hobby users, you could provide a drag-and-drop feature to create holes in the panels -- you could have circles, ellipses, rectangles, rectangles with rounded corners, etc. After dragging one onto a panel, the user could specify dimensions (e.g., D diameter, W wide, T tall, etc.; also X-Y offsets from the lower-left corner of the panel. You could also provide cut/copy/paste type facilities -- also shapes for common connectors and suchlike. Maybe do something similar for the silkscreen/annotations... Just a thought...