Does the attack or defender decide the order of damage assignment to blockers?
By the very rule you quoted (and the one directly following it):


You choose the damage assignment order of attacking creatures you control. (CR 509.2.)
Your opponent chooses the damage assignment order of blocking creatures he controls. (CR 509.3.)


Simple Example

You: "I attack with Centaur Warrior."
Opponent: "I block with Jeskai Student and Disciple of Phenax."
You: "I will assign damage to Jeskai Student first, followed by Disciple of Phenax."
You: "Damage?"
Opponent: "Sure."

Note: There was no need for your opponent to declare a damage assignment order, because each of his blockers are only blocking one attacker. Centaur is assumed to be first in line.

Centaur Warrior must deal at least lethal damage to Jeskai Student before dealing any damage to Disciple of Phenax. You are not allowed to change the order at this point. Therefore, Centaur deals all 3 points of damage to Student. Student and Disciple each deal 1 point of damage to Centaur.

Centaur and Disciple live. Student dies.

Intermediate Example

You: "I attack with Ash Zealot."
Opponent: "I block with Elvish Mystic and Runeclaw Bear."
You: "I will assign damage to Runeclaw Bear first, followed by Elvish Mystic."
You: "First Strike Damage?"
Opponent: "Sure."
You: "Bear dies. Second Strike damage?"
Opponent: "I'll cast Giant Growth on my Elvish Mystic."
You: "Ok it resolves. Second Strike damage?"
Opponent: "Sure."

Ash Zealot deals damage in the first damage phase. Zealot must deal at least lethal to Runeclaw Bear before moving on to Elvish Mystic. Therefore, Zealot deals all 2 points of damage to Runeclaw Bear.

At this point, you both get the chance to play spells and activate abilities. Your opponent takes this chance to make his Elf larger with Giant Growth. We then move to the second damage phase. Runeclaw Bear is already dead and so cannot deal damage. Ash Zealot already dealt its damage. Elvish Mystic is the only creature than will deal damage, and so it deals 3 point of damage to the Zealot.

Mystic lives. Zealot and Bear die.

Special Notes

Some abilities modify, or provide exceptions to, the rules for attacking and blocking. For a particularly complicated example, read about an old mechanic called Banding.