I haven't had much trouble with Dratini, either; in my first run of FireRed, I wound up running into one without much effort at all. In my second play-through, it was a little more bothersome, however, but I still wound up encountering it eventually.
As for Bagon, I was never able to encounter that one. Alongside Feebas and Milotic, this Pokémon was one reason as to why I quit trying to complete my PokéDex in Emerald, in fact. Regardless of how tough I tried trying to find Bagon in Meteor Falls, I just couldn't, unfortunately. It was supposed to be in one of those rooms, but I do remember visiting each and every one; no luck.
My friend had a couple of Bagon and was willing to give one to me, but sadly, she couldn't, as none of us had any link-cable at the time.