What you have is the following:
A is B, Some C are B. Therefore, All A are C.
We cannot use 'All C are B' because 'All females have red hair' is not true. Also, it does not yield a contradiction. Structurally there is nothing wrong with: 'A is B, All C is B. Therefore, All A are C'.
If 'A is B', it means they have a property in common, in this case B [the property of being redheaded]. We can treat them as equal, A = B.
Some C are B = Some C are A
Thus, we can rewrite it as:
Some C are A. Therefore, All A are C.
We have now found the contradiction, namely:
'All' ≠ 'Some'
Structurally,
A is B, Some C are B. Therefore, All A are C.
is not valid. We cannot use this structure to deduce a conclusion.
Edit:
The fallacy is called the undistributed middle. In this case the problem is:
All Z is B, Some Y is Z Therefore, all Y is B
If we add the Z and Y to
All A is B Some C is B Therefore, All A is C
we get:
All A is B [Z] Some C [Y] is B [Z] Therefore, All A is C [Y]
We rearrange and compare:
All Z is B, Some Y is Z Therefore, all Y is B
with
All B [Z] is A, Some C [Y] is B [Z] Therefore, All C [Y] is A
and conclude that the problem is related to the fallacy of the undistributed middle.