This is a cool idea, but consider statement based replication vs row based replication before you get too far into it.
Consider 4 master dbs each with a 1sec replication lag.
An update statement changes a flag from 0 to 1 on a column over entire table, and is executed on db1. Due to replication lag db4 executes the update ~3 seconds later.
If using statement based replication I'm thinking that there's a 3sec window where inserts get replicated out before the update affects em. Now those few rows are stored differently in db1 than db4.
You'd have to use row based replication so that those inserts in that 3sec window get a second entry in the replication log when the update hits em.
Of course the downside of row based replication is that if your update touches 1mil rows, you just added 1mil statements to your replication log. Not necessarily evil, but something to consider.