Has it been confirmed that Ash battles Iris in the finals or something?
Anyway, against Iris, I think Scraggy would be the most logical choice. Why? Because Iris will naturally pick Axew seeing as those 2 or bros and rivals and they're evenly matched so it makes for great Axew training. And plus, at this point ... Iris has a counter to his current team in her roster of 4 Pokemon. Dragonite's known moves can counter most of his Pokemon, Excadrill can also be effective against a number of his Pokemon (best example would be Pikachu) and given how Emogle did in the Don Tourney I'm sure it could use it's attract/ counter fighting style against a few of his Pokemon.
NOT SAYING ASH HAS NO CHANCE at beating Iris! Just saying, if I were in his position, I would go for the baby fight ... just like how last time they ended up going for the Starter fight. Because though he may have a chance at beating Excadrill they would have to do an ass-pull for this Dragonite to go down to anything on his current team. At least the baby fight could go either way or result in and awesome double evolution. Could even end in a tie.