My question is why is the rate higher on one exchange than on another?
That's because they are two different exchange and due to low or average demand going on that trade. It is the same thing when there is a demand on a coin, one tend to go up faster than the other especially on the one that has the highest volume but the price difference are just slightly different. If the price difference is very high, that's when you see traders doing arbitrage trading. Traders will start buying from an exchange that is lower in price to sell in the one that has high price and the demand on the lower will adjust itself to meet the other one.
It's a common thing you see on centralized exchanges, you hardly see it on decentralized exchanges and that's because they use chainlink data feed so as to get the accurate price for a coin and because it's a decentralized data, it's hard for people to temper with it or even manipulate it.