How many device classes can a single USB composite device implement?
You have limit to the number of endpoints in a device (16). If you only need one endpoint per interface (that's where you have a chance to specify the class different from one given in a device descriptor) you can have 15 classes. You may want to take a look at the config descriptor of any modern non-smart phone, Bluetooth dongle, or a webcam - all of them are typically quite large and contain several classes.