What you're talking about is a partigyle (or partygyle, or party gyle, I've seen several spellings, but that can help with searching for more info). I'm currently planning a similar experiment this weekend (RIS/oatmeal stout), and found braukaiser's partygyle simulator
very handy. There's no reason why your plan won't work, but the simulator can help you to figure out whether or not you'll be able to get enough extracted out of your grains for the batch size you're looking for. I'm looking at a smaller first batch (3gal) and a 5 gal second batch consisting of 2 sparges, so mine is a little easier. The only thing I can see you getting stuck on is being able to get enough extracted for that third mild batch (even assuming a low OG ~1.03) without having to sparge with a lot of water and boil it down pretty far. If it looks like that might be the case, you can always add a little more grain to the mash and let that go for another hour, or you can just add some extract if you want to make sure you hit a certain OG.
One thing that I haven't been able to figure out, but shouldn't be a problem for you, is how much color carry over from dark grains occurs between the first and second batches (and third in your case). I'm planning on holding back a little of my dark malts to toss in before running the second batch out, and depending on how dark you want your second and third batches to be, you might consider something similar.
As far as setting it up in Beersmith, I haven't figured out a foolproof route yet. Right now I've got three separate recipes, one with the entire grain bill for mashing purposes, then one for each recipe where I've basically just added enough grain to keep the expected color and gravity consistent so I can track fermentation and gravities on each batch. Not a perfect system, but hopefully it will work for my purposes!