You had at least 2 questions:
1. Do we have to repeat the terms in our explanations? YES, for now. I could see this be a feature some day where the model automatically handles this but not today
2. Terms are added instead of use preferred term and synonyms is this expected? If I understand your points then YES. It should match the term or any synonyms but won't create synonyms automatically. If you don't want new terms created you have to have a CLOSED termset or add the new names as synonyms manually. Modify your termset to be closed and new ones won't be added but synonyms will be used as in the sample. See the NOTE at the bottom of the tech doc
If the term set is open, then any extracted values that do not match a preferred term or synonym value will be added as a new term to the root of the term set. These new terms can be moved, merged, or made synonyms in the term store where the term set resides.