The only way to deal with Ho-oh is through rock moves as you illustrated. While perhaps nobody would truly use Ho-oh as a special tank, perhaps some numbers would help clear things up:
Milotic, sitting there with a pretty base 100 special attack compared to its fellow bulky waters, with no EVs invested in Special Attack, using Surf against a 0/0 Ho-oh: 39.66-47.59%. Also something to keep in mind is that Milotic, when burned, will take about the same damage from physical attacks in general as when it is not burned due to the extra 12% loss in HP per turn. Suicune and Swampert, with lower SAtk stats, will be doing even less to Ho-oh. Anything physical that can come in and threaten Ho-oh has to worry about a 50% burn and an 80% accurate move to scare Ho-oh off.
Milotic, sitting there with a pretty base 100 special attack compared to its fellow bulky waters, with no EVs invested in Special Attack, using Surf against a 0/0 Ho-oh: 39.66-47.59%. Also something to keep in mind is that Milotic, when burned, will take about the same damage from physical attacks in general as when it is not burned due to the extra 12% loss in HP per turn. Suicune and Swampert, with lower SAtk stats, will be doing even less to Ho-oh. Anything physical that can come in and threaten Ho-oh has to worry about a 50% burn and an 80% accurate move to scare Ho-oh off.