How are partial measurements performed on a N qubit quantum circuit?
To measure a single qubit you:


Split the amplitude vector into "target qubit is Off" and "target qubit is On" parts.
Weigh up the parts. Add up the squared magnitudes of the amplitudes within each part. This gives you the probability of each.
Randomly pick one of the parts. (Or keep tracking both. Just make sure you never interfere parts from one with the other anymore.)
Renormalize the part(s). Divide by the squared-magnitude-sum, so the result totals to 100% again.


You'll probably find the calculations a lot easier if you do one operation at a time instead of a whole column at a time.

Also, you'll probably find my quantum circuit simulator Quirk helpful. It lets you drop state displays into the middle of circuits. Useful for checking your work. Here's your circuit in Quirk, with various displays sprinkled in:



The vector entries are not in quite the same order, but they agree with your results.

As you can see, the top measurement results are 50/50 random and the third qubit ends up pointing right (i.e. in the state $|0\rangle - |1\rangle$ regardless of the measurement outcome). (Trying to factor out a qubit often makes states easier to understand.)

Basically what has happened is easier to explain if you think in terms of the X gate as an X-axis control. Given the state of the third qubit during the CCNot, that "control" is satisfied. So really it's like the controls on the top two wires are a controlled-Z. This entangles the top two qubits.