I don't think this is a valid way to compute the angle between finger segments. You are taking the angle between two position vectors, not two direction vectors. Your computation would change as the hand moves (while keeping the fingers in the same relative position).
Now that Bones have been added to the API, Matt's code above is correct. You can also use AngleTo() on the two bone direction vectors to get the angle in radians.
(Or since direction vectors in the API are unit vectors, you can take the acos() of the dot product as in Peter's example.)