Wazzled:
It was this "This on-off pattern can simulate voltages in between full on (5 Volts) and off (0 Volts)" from the Arduino - PWM page that confused me. I was thinking that PWM would give between 0-5v but what its really doing is turning 5v on and off really fast.
On average, though - that is what is happening; a voltage between 0-5v is produced - you need a small extra circuit to really "see" the voltage (a filter), as explained here:
http://provideyourown.com/2011/analogwrite-convert-pwm-to-voltage/
Essentially, though - think of it this way: The PWM output is varying between 0 volts and 5 volts. The amount of time "on" (HIGH or 5 volts) versus "off" (LOW or 0 volts) determines the "average voltage". If it is always "off"/LOW - you have 0 volts; if it is always "on"/HIGH, you have 5 volts. If it is on and off equal amounts of time (regardless of the frequency mind you; although for most purposes, the frequency will be few/several ten's of kilohertz or better), you get an "average" between 0 and 5 volts, or 2.5 volts. If it is more "on" than "off", it skews towards 5 volts; more "off" than "on", it skews toward 0 volts.