All three seem to mean fog or mist. Is there any regional difference in usage? Or do they actually stand for slightly different things?
I think that their difference is mainly visibility. If you can see something (fairly well) it might be neblina. If you can't see much is niebla. I don't know if this "threshold" for visibility is subjective or not, but I'm positive that the niebla is "thicker" than the neblina, allowing you to see less. Most famous example I can think of is "La niebla de Londres" (is there a difference in English between mist and fog?)
Then, the bruma is when those water drops that form the mist are over or near the sea.
I don't know if there are any regional difference in usage, but they might depend on wether that place is close or not to the sea or ocean (using bruma more often than the other, or instead of them).
According to the Wikipedia entry for neblina the difference is in the visibility and the size of droplets. Niebla has visibility less than 1 km, nieblina 1 to 10 km. The relative humidity is between 90 to 100 and 80 to 90 respectively. The English equivalents are fog and mist. Calima and Bruma involve solid particles with visibility > 2km and < 2 km respectively. I think the English equivalent is haze although severe cases are called smog.
Edited in response to @Gorpik's comment below
There is an international definition of fog and mist available from the World Meteorological Organization web-site here which is what the Wikipedia entry is using.