I've been digging through the USB and CDC core files now for several hours, and I still don't really understand exactly what needs to be changed (or how to do it).
I can read the value of _usbLineInfo.lineState, and it does indeed contain the status of DTR and RTS. However, the values only get updated when DTR changes. If the PC application (in this case a serial terminal) changes RTS, the value of _usbLineInfo.lineState will only change at the moment that DTR is changed (either made high, or made low).
Could someone with the ability please implement the handshaking signals? I'm sure I'm not the only one who wants this.