I think I have your answer. You can buy another TM 43 (Secret Power) in Slateport City for $3000. The answers to your other two questions can be found in the Ruby/Saphire FAQ. Always consult there before asking a question. Here are the answers to your questions direct from the FAQ:
_________________________________________
Mirage Island
Mirage Island is an Island found on Route 130, and appears when certain conditions are met…
Each time you catch or obtain a Pokémon, it's assigned a hidden "number". Let's say your Ralts has the number 1425.
Every day a random "number" is picked.
If the number of any of your Pokémon matches the chosen one of the day, Mirage Island appears. Talking to the old man will let you know if one of your party Pokémon is the right number. So, you need to bring all your Pokémon to him each day.
So, when the number 1425 is the number of the day, and you take your Ralts to him, he'll be able to see it. There's no way to know the actual number of the day nor your Pokémon's. You just have to check back with him everyday, bringing all your Pokémon to him.
Catching Feebas and Milotic
I higly recommend catching Feebas for these three reasons -
1) To complete the pokedex
2) For some bragging rights
3) To obtain a milotic which is has great Special Attack and Special Defense, along with a great move pool.
What You Will Need
1) old/good/super rod [old is preferred as Feebas can be caught with it, but u don't have to waste time with other pokemon besides magicarp and a few tentacool. It can be obtained by a fisher in Dewford town. He stands near to the gym]
2) approximately 5 pokeballs [higher grades are not nessary for such a weak pokemon] as you will want to catch a few feebas.
3) a pokemon that knows surf [HM slave ^_^]
4) a pokemon that knows fly [not a must but after sitting in that water for so long i would think u would want to get out of there as quickly as possible]
Feebas is a rare little fish pokemon. How rare you ask??
Well let me see. It is obtainable in 6 tiles [sections of surfing water] out of approximately 400 tiles of surfing water on route 119.
Now thats something isn't it??
The feebas tiles are random and if you change the "Popular Phrase" in Dewford town the tile positions are RANDOMLY RESET[ie you can't take someone else's 'popular phrase' and try fishing where they got their feebas. It won't work.]
Now that you have what u need head up to the base of route 119. Do this by flying/walking to mauville and then surfing across the narrow stripe of water right of the gym.
Now you will be on route 119. This is a very long route [unfortunately] packed with sections of water [potential feebas grounds] along its length. I recommend you start form the first pond you come across. Start form one corner and work your way up. Fishing in each tile you move into.I recommend fishing 3 - 5 times in one tile as any less may allow our fishy friend to slip through and any more would be overkill.
Now all this sucks i must admit, but when u do find the feebas tile you will be pleasently surprised to find that they will appear with a 60-80% probability. Which is, in my opinion, fairly sweet.
______________________________
I hope all that info helps you. Remember all of the info above is direct from the Ruby/Saphire FAQ.
Next time ask simple questions in the Simple Questions thread. The link is and forever will be in my sig and in the group of stickies at the top of the R/S/E GBA Forum.