I think the problem is more to do with the entries in the CDDB database rather than the ripping software. It can only auto tag the tracks based on the information it can obtain from each track it is given and the data currently in the database, so if the actual compilation album isn't in the database, but the tracks themselves are it will instead try to name each track based on the entries it does find.

I tend to use MediaMonkey to rename the tags in tracks and albums that are not correct as it has a good auto tag system where you can pick just specific parts of the tag information to update or change, or as would be useful in your case, it can extract the information from one of the tags or the filename and distribute the information into the correct tags.