It not that difficult once you leave behind the meme of a two party system.
Let us assume you have a riding or constituency of 5000 voters.
There are two parties running considered mainstream. One side gets 44 percent of those 5000 votes and the other gets 42 percent of those eligible votes.
The FIRST party will win the seat with 2200 votes. The second place finisher will get nothing even as that person had the support of 2100 votes.
Now let us assume that First party was RIGHT wing or conservative and the Second was Left wing or socialist. The Right wingers have a faction that have a falling out. The supporters (see tea party) do not think the party is right wing enough so a NEW party is formed.
Now there another election.
The TWO right wing parties still get 44 percent of the vote but it SPLIT down the middle as half the persons that voted for that ONE Conservative party decide they want to support the new more to the right party.
The NEW right wing party now gets 1000 votes.
The OLD right wing party gets 1200 votes
The left wing party gets the same level of support or 2200 votes. Left wing party will win and will win by a significant margin.
Multiply this by all of the ridings or constituencies in a province/country and it determines who will govern.
In the Alberta election the Conservatives USED to be one larger party but had an internal falling out and a number left that party to form "The Wild Rose Party" which is much more conservative. They took many of the voters with them.
THAT said as mentioned some 20+ percent of the voters that voted for one of those two conservative parties in the 2012 elections voted NDP. That is what is most significant. This tells me there a lot of voters in Alberta who once considered themselves "conservatives" who would rather support the NDP then Wild Rose or the far right.