Actually, yes, substrate color can play a big role in fish health and color. For most fish, there is definitely a preference for darker substrates. Few fish enjoy a reflective substrate, and most all are adapted to an environment where the substrate is of a subdued tone. That's why many fish have color on their sides and backs but have light-colored bellies. If you're a predator spying the water from above, a fish against a darker substrate will be MUCH more difficult to find if its back is also darkly colored than if it's back were bright or white. Likewise, if you're a predator looking for prey from the substrate up, a fish against sunlight will be much harder to spot if its belly is lightly colored and even reflective than if its belly were dark. Fish such as upside-down catfish have dark bellies because they swim in a different orientation.
Many fish put in a tank with very light-colored gravel will tend to blanch. This is both an adaptive response to the lighter gravel (to reduce their visibility from above) and a response to increased stress (won't generate full color when stressed). A prime example is the lemon tetra. Kept above a light-colored or even earth-colored gravel and it will be lemon-yellow to yellow-white. Kept above a black substrate, and they'll turn slaty grayish yellow--quite attractive, actually. For this particular fish, it's usually best to keep them above a neutrally colored substrate, since most people purchase this fish because they prefer its color to be a luminous yellow. For most other fish, however, a darker substrate is almost always preferred, and fish such as neons and cardinals will actually live longer when kept in such a manner. This does not exclude water quality as a factor as Buck mentioned, however: A fish kept over a dark substrate cannot be expected to demonstrate deep, rich colors if its in a constant state of poor health.