However, sellers not reusing addresses that receive payments does solve the problem even in the centralized case as Alice and Bob cannot simultaneously think that they are paying Steve.
That is true, but the protocol shouldn't limit users in such a way. But you are correct, in a world with perfect information this is not a problem.
the example was a donation address, it would be difficult to imagine this changing for each donation
As I said I don't really understand how maaku solves this problem
nor me, his approach seems to be more de-centralised, but I can't quite grasp how he can guarantee that this problem can't occur