The problem is not well-written (not referring to language issues!), because it doesn't say how they are chosen, which can make a difference. There can be a conflict if B is chosen from two different groups, and we need to know how that is resolved. Therefore it's possible that your answer is correct for a different interpretation of the rules than theirs.
But looking at your work, P(B) is not P(B from list 2 or B from list 3) = 1/2 + 1/3, because there are not two different B's to choose from (mutually exclusive).
Suppose they choose someone from the first list, then the second, then the third. Then
P(A and B) = P(A from list 1)*P(B from list 2 or (not B from list 2 and B from list 3)) = (1/2)((1/2) + (1/2)(1/3)) = 1/3
But suppose they choose first from list 3, then from list 2, then from list 1, so that B is more likely to be chosen from list 3 than the first way. Then
P(A and B) = P(B from list 3 or (not B from list 3 and B from list 2))*P(A from list 1) = ((1/3) + (2/3)(1/2))(1/2) = 1/3
That looks like it could be the answer, but these are not the only ways to make the choice. They may be making a different assumption in order to get 3/10.
Let's try a different strategy, just assuming that every possible choice is equally likely. How many ways are there to chose the cast? There are 2 choices for role 1, 2 for role 2, and 3 for role 3, but one choice (B for both roles 2 and 30 is invalid, so the total is really 2(2*3-1) = 10. How many ways are there to chose A, B, and someone else? That gives one choice for role 1 (A), and for roles 2 and 3 it can be either BM, BL, or CB. So there are 3 ways to include both A and B. The probability is 3/10. Something like this must be what they did.
But how do they make the choice so that all 10 possibilities are equally likely? I don't know.
Since my 1/3 is close to 3/10, I'd say that the answer is in that vicinity, but depends on how the choice is made.
I haven't tried to find an error in Romsek's work, or to see what assumption it makes.