Why does the bitcoin price differ on different exchanges?
Because different exchanges make it easier/harder to work with different currencies, different people use them.
The more liquidity there is on the BitCoin markets, the less the price will differ. BitCoin just doesn't have that sort of liquidity or market depth yet.