Our Scrummaster is also on the team, but yes it definitely causes confusion when he switches hats to team member.
As a Scrummaster he is not part of how the team solves a problem. His role is to just bring up the issue. But as a team member he has a definite say in how we solve it. It's hard to not cross over when performing one role, and not confuse the roles in the eyes of the team. It can more easily regress into a leadership role especially if it's by a strong personality.
For example, if the team is not looking like it will meet its commitment, the SM should ask, "hmmm not looking good for meeting the commitment. What are you guys going to do about it?" or if the team is not meeting the definition of done for all its items, he might ask "is everything done? how about testing? didn't we decide that was part of 'done'?"
But, as a team member, he could say something like "we're totally screwing up here and need to get our act together!" The team may be inclined to confuse his voice as a member of the team with one of an authoritative manager, and might cause the team (especially new ones) to fall out of self-managing behavior.
But, in our situation it still makes sense to have the SM be on the team. A dedicated SM would be a part-time job for our 1 team.