If person A is addressing person B as 'Sie', is it always appropriate for person B to also address person 'A' as 'Sie'?
For example, a student would address a professor as 'Sie'. Would the professor use 'Sie' or 'du' to address the student?
No, it's not automatically appropriate to respond with "du" to someone addressing you informally. If there's a difference in the level of age/esteem/reputation, you should not assume that it is Ok to address the other person informally. Child-adult or student-professor relationships are classical examples of such a difference.
Note that the rules governing when to do formal ("Sie") and informal ("Du") addressing have been changing constantly as long has I have been aware of them (let's say since the early 70s). It's very common even for Germans to be unsure about them.
If in doubt, being inappropriate in addressing the other person formally might, on average, be less awkward than being wrong in addressing them informally. So just stick to that, listen keenly how the natives do it, and rely on everybody giving you some slack for being a foreigner.
No. Not always. Between adults this is basically how it works.
However, at school, for instance, usually a teacher will address a child as "du" whereas the student will respond with "Sie".
Responding with "Du" to a "Sie" usually happens when a child or teenager talks to an adult using "Sie", then the adult uses "Du" to the child. I've also heard it used it the military, where the lower-ranked person uses "Sie" to the higher-ranked person, but the reply may be with "Du".