You can do quite a bit in QB. Even though it is not set up specifically for custom work inventory tracking, it can be made to do it. The most useful thing is the group item, which is completely flexible, and can be changed on the fly within an invoice or sales receipt so that you can deal with custom things without having to create individual items for every custom product you make.
For example: I can create a group item, "Notebook", and define it as having an item "cover leather", and item "lining leather", and item "labor". When I use the group in a sales receipt or invoice, I can fill in the actual amount of each item used and the price I want to apply, add additional items or remove unused items. It will only affect the information on this sales receipt or invoice, and the next time I use it I can do different things with it as needed. Totally flexible. QB will reduce the amount of "cover leather" and "lining leather" in inventory (if those items are inventory items) and add their values to COGS account, and the total sale amount goes into whatever account you defined for the income. You can also use this with non-inventory items, QB just handles the information a bit differently.
You can try out the technique easily enough by abusing one of the sample companies that QB has (at least in the old version I use).
What will mess with your head is trying to decide what to track as inventory and non-inventory parts without spending all your time bookkeeping, yet provide accurate enough cost info (how many rivets can a project use before they become a significant part of the cost tracking? Ahh, ahh!!!).
Feel free to pm me if you want more info.