Is there a chance that the 10 groups are members of other groups? According to the documentation:
UserPrincipal.GetAuthorizationGroups Method
This method searches all groups recursively and returns the groups in which the user is a member. The returned set may also include additional groups that system would consider the user a member of for authorization purposes.