Thanks Craig - I'm still chewing it over.
With the current set up, there are no cushions available to buy and put in the cart. Just this page where you can choose to add cushions (I guess in the same way that postage can be selected), and a price added accordingly.
So as a kind of fix, I thought this might work (if not that elegantly!)
1. Add cushions to the products database.
2. Edit the current page where people can add cushions, to a page that reminds people that they might need cushions, and provide a link to a cushions product page.
Does kind of rely on customers knowing what cushions they need.
A step on from that, I guess if cushions are stored in their own table, eg
Then that table could be links to the main furniture table by adding a look up field, Cushion_ID
Which I guess is the sort of approach you're talking about?