The normal, unmarked expression would be "The price is three dollars." The speaker and the listener have implicitly agreed that a price exists and the speaker is informing the listener of what that price is.
But consider the following exchange.
How much is this orange.
Three dollars.
Three dollars! Are you kidding me? For one orange?? Three dollars is a rip-off.
Well, three dollars is the price. You can pay it or you can leave.
After the first exchange, both speaker have agreed that "three dollars" is the amount of money under discussion, and the second speaker is informing the first that "three dollar" is the price that he charges for an orange.
So you are right, "Three dollars" is the thing being named, the thing under discussion, and the difference of opinion is whether it is the fair price of an orange, or a rip-off.
This is quite normal, and may be used for emphasis or just because it is "logical".
Three dollars is a fair price to pay for oranges like this, they are very sweet and juicy.