Hi Inigo,
Sorry I did not see your question earlier. Before answering, please bear in mind it is a long time ago that I looked at this and we did not take it all that far, as at the time we could not get the Exsiccata form to work. I still think it can work nicely though.
For us, it was never about label headings, but provenance, and we want the many-to-many relationship between Collection Object and Exsiccata (there is a one-to-many relationship between Collection Object and Exsiccata Item and a many-to-one relationship between Exsiccata Item and Exsiccata, so a many-to-many relationship between Collection Object and Exsiccata).
For collections, we would use the Title field in Exsiccata for the name of the collection, for example, we’ve got the Sonder collection (Herb. Sonder). So, for us Title being required makes sense. Yes, having to create a Reference Work record for a collection was a bit annoying at first, but it does give you some extra fields and also the ability to link to an Agent record. A few extra fields in Exsiccata and Exsiccata Item would indeed be awesome. I cannot remember the Schedae field (in Exsiccata) and I cannot immediately see what its intended usage is, so I would probably put a pick list in it indicating whether the record is for an exsiccata series or a collection (or something else again).
As I said, I could not get it to work about ten years ago, but I found that in the more recent versions of Specify 7 I am able to do things that I could never get to work in Specify 6 – I got Collection Relationships to work this afternoon – so I might try again soon.
Also noting that Project has perhaps a more straightforward many-to-many relationship with Collection Object, so that might work better for your situation, but for me the fields are more problematic than in Exsiccata + Exsiccata Item. I also already use Projects for all sorts of lists, for example for specimens sequenced for the GrassBoL project (and similar projects) or batches of type specimens for which we sent images to JSTOR for the Mellon/Global Plants Initiative project.
PS. I do something similar to what Joaquim and Robyn do with the collection name, but then with the type status string that we want to print on the labels (or packets actually) for our types. People do not get to fill that in themselves though, but I have two functions and a procedure (don’t worry @JimBeach, no trigger) to populate the fields in Preparation with the relevant information from the Determination and Taxon tables.