My Subaru Outback had a CEL pop up, while on a trip, 6 months old, 15k miles. First thing I confirmed was cap tightness.
After a going over, the dealer I took it to replaced the cap. Has not happened since, in over 75k miles and 3 years. So....They don't have to be old......They can just be bad.
Interestingly, the new cap had a different color gasket....Original was black, new one brown. But I suspect the problem was internal to the cap.