Do you feel any loss of power? any different at all before the light came on? random misfire usually give the hesitate, if everything just feel fine then probably just the gas cap is not tight enough, since you mentions that you have been up to date with the maintainance why dont you unplug the EFI fuse in the fuse box for 20 sec,then put it back, it should clear the check engine code and if it check engine light comes on again in a few minutes or miles there must be something else that causing the problem. If it is not then the gas cap is the problem.