I came across exactly the same issue quite recently. After reading many different advices which none of them worked for me, I finally went under the hood and found the root cause of the issue.
Mobile provisioning file actually DOESN'T match with the Entitlements file generated by Xcode.
Although all files are anaged automatically by Apple tool, they are not correct.
If you download provisioning file from Apple portal and open it (you can open it because it's just plist file signed by your certificate, so it's readable by text editor) and compare it with your Entitlements file (automatically generated by Xcode and residing in project files (so it's again plist XML file readable by text editor). Then you can see the difference.
In my case it was Game Center entitlement. It was displayed on the portal as checked (checked by default) but actually this entitlement was not included in mobile provisioning file. So it was matter of deleting it from Entitlements file.
So the result is - content of mobile provisioning profile sometimes doesn't match with what is displayed on the APP ID configuration page.