The best solution is to have all players connect through a remote database that stores the table information... I'm guessing that is out, as it would take infrastructure and bandwith, along with a server side architecture, along with major redesigns of simple operation... maybe this would be best in 3.0 once ESPN finally picks up tournament 42.
It sounds like you are wanting 1 host and 1-3 clients. My big question is, does iOS finally have true background tasking, or is it still the freeze & store the RAM then switch over to the new foreground task?
My first thought is to create a database holding the table info on the host machine, then the clients push update requests. The host updates the DB, then pushes it back out. This sounds pretty packet intensive depending on the DB size. On a disconnect, the hosting title moves to whoever is active with the newest version of the DB...
A second idea, which is also pretty packet intensive would be to just pass the DB from machine to machine allowing each player to make their change... essentially passing the hosting title around the table.
The third idea, reduces the amount of data that must move from machine to machine, but seems a bit delicate... The Host creates a DB and pushes it to each client. During play, the update requests are passed to each client to update their own DB... I can see countless "DB mismatch" errors coming from this, however.
You may have already considered all of these, and likely have a much better method in mind. Is this going to be WiFi only? 3G? Is Bluetooth possible since you need 3 connections to one device using the same service?