Would it not be more convenient to have all colonies use the same currency?
Convenient for whom? Remember, this is an era (depending on exactly when we're talking) when crossing an ocean takes days, weeks, or months. Colonies are more concerned about trading with their neighbors than trading with their home country. For example, Canada will increasingly be trading with the US.
To answer this properly requires understanding two things: national economics in the era of hard currency (ie. coins made of precious metals, or bills backed with them), and just how slow trading with colonies was.
Rather than sum all that up, watch this Extra Credits series on the History Of Paper Money.
The Pound Sterling, and national currency in general, as we know it today is a fairly recent invention. Getting "hard currency" was always a problem for colonies, in part, because mercantilism said that Britain should try to keep as much hard currency as possible, plus the problem of getting it shipped around the world, and then that the colonies were trading with all different nations. As a result, British colonies were using all sorts of currency.
A bank note from the Bank Of England was just a piece of paper that some foreign bank said was worth something. Banks back then were far less stable than now, and British fiscal policy got pretty crazy (for example, watch this series on the South Sea Bubble). Who knew what it was actually worth?
You couldn't just walk down to the local Travelex and get it exchanged. Without a branch of the BoE around to redeem their notes at face value, who knew what it was going to be worth in trade? Its value could fluctuate on the international market. This was a risk, and traders mitigated that risk by accepting paper bank notes at a fraction of their value. If you wanted to trade and get the best value, you needed coins made of hard currency: silver and gold.
Spanish Dollars were particularly popular as an international currency because they were uniform and it didn't rely on any nation or exchange rate: it was a reliable quantity of precious silver. It was "hard currency".
In 1825 the British decreed that all their colonies would use Pound Sterling buuuut they set the official exchange rate with the Spanish Dollar too high and very quickly people were turning in their gold sovereigns for more valuable Spanish Dollars. Whoopsie.
Add to that the idea of mercantilism which dominated 19th and early 20th century fiscal policy. It basically said to hold on to as much hard currency as possible. Now countries really want to be able to control their own currency. The UK doesn't want gold and silver coin flowing out to the colonies, they want it flowing into the UK!
So instead of colonies using British Pounds backed by gold and silver, they used their own currencies backed by British Pounds. This both increased the demand on British Pounds, making it more valuable and stable, and it prevented gold and silver from being exported to the colonies: pound notes were exported instead.
As the colonies grew larger, and their economies grew larger, they needed to be able to set their own fiscal policy independent of their home country. One of the most important ways to do this is control of the money supply: literally being able to decide how much money you mint to control its value.
Economy slowing down? Print some more money to cause inflation! If you have a pile of cash, inflation is slowly causing it to become less valuable, so loan it out and put it to work! These loans let people start businesses and other people buy things from them.
Economy heating up too fast? People making too many risky loans with all that cheap money floating around? Buy back some money to cause deflation! Now it becomes sensible to sit on your cash.
A fiscal policy that's good for the UK wasn't necessarily good for Canada or South Africa. So they started printing their own money. This money was usually pegged to the British Pound for stability, for example the original Canadian Pound was worth 16 shillings 5.3 pence sterling, but they could change that official rate. This system is still used by many countries around the world, pegging their local currency to US dollars or British Pounds.