In Ruby version, I remember having to go to the route by the weather station and fish in every square. Fish a few times in each (I'd say 3-5) and by the time you get through every square, you should find one that had Feebas. When you find it, the chance of fishing up more feebas in that square is pretty high (I think it was 50% or something). It definitely takes a long time, lots of patience, and a little bit of luck, but you'll find it eventually if you scour the water every day. I caught one after trying a couple times and it was pretty cool. I filled a whole box with them before I decided to stop. :P
Or you could just go with what everyone else says and trade or GTS for one. It's much easier, but I guess it's kind of rewarding when you find the square yourself. I'm not sure how one can catch feebas in Diamond, but I know it's possible.
If you decide to just trade for one, feel free to send me a PM or something and I'll hook you up with a feebas for free.