What is the difference between "merits"and"strengths" and what is the difference between "demerits" and "weaknesses"?
The noun merit can mean
The verb form has a similar tone
Both forms connote some praiseworthy activity or effort.
Strength, by contrast is a more passive characteristic
Demerit even more clearly suggests action, albeit negative
Weakness also has a more passive connotation
While there is some overlap in both pairs, there are reasons to choose one over the other.
To me, merits/demerits are given based on specific activities (you received 1 merit badge when your answer is accepted on Stack Exchange) and strengths/weaknesses are inferred based on the merits/demerits one earns (her many badges for accepted English Language Stack Exchange answers show that English usage is one of her strengths, while his many downvoted answers on calculus in the Math StackExchange show that integrals is a weakness for him.).
Another way to see it is that merits/demerits can be awarded objectively (that is, without context) while strengths/weaknesses are subjective (and therefore require context to be awarded).
My opinion: merits/demerits embellish someone's personalities. strengths/weaknesses embellish someone's skills.