Following on from 
this thread in which the election process in STP was discussed, I decided to investigate in more depth as there seemed to be conflicting answers given. At one stage I thought I understood how it worked, only to go read something on the Internet that completely contradicted my understanding, so I thought the best way to get conclusive answers was to lab... extensively!
In my labs SW2 has the lowest BID and so is always elected as the Root Bridge, SW1 has the next lowest BID and SW3 the highest BID.
First off I ran the equivalent of the two scenarios from the other post in which there are two switches with redundant links between them. In scenario 1 the links are straight port-to-port 23-23 and 24-24, while in scenario 2 the links are swapped at the Root Bridge so 23-24 and 24-23.
In both tests the port connected to the 
lowest port number on the Root Bridge was elected on the second switch as the Root Port, which actually contradicts the NetSim lab that was run in the thread.
I then ran 6 more tests:
3. 3 switches with non-redundant links and multiple paths.
4. Same lab with the connections on the Root Bridge swapped to see if the elected Root ports change.
5. Added a redundant link between the non-Root Bridge switches (SW1 and SW3).
6. Swapped the ports over on the redundant link between SW1 and SW3 to see if it affected the port statuses.
7. Swapped the links back to test 5 and broke the direct link between SW1 and the Root Bridge to see which of the 2 ports back to SW3 would be elected as the Root Port.
8. All switches connected with redundant links.
As you can imagine the test results are far too extensive to type out, but anyone that wants the spreadsheet complete with network diagrams and CLI output is welcome to a copy.
In brief the results were as follows:
The Root Bridge will always be the switch with the lowest BID (resulting from having the lowest MAC address).
The Designated Bridge on a network segment will always be the switch with the lowest BID of the two connected switches where neither switch is the Root Bridge (*see test 7 result).
The port elected as the Root Port will always be the port connected to the lowest port number on the connected Root Bridge or Designated Bridge where all other factors are equal (eg path cost etc).
In test 7 when SW1, the Designated Bridge on the network segment linking SW1 to SW3. lost it's direct connection back to the Root Bridge, SW3 became the Designated Bridge as it still had a direct connection.