Why does Venus transit so slowly? I have calculated that because Venus is $d = 12,103.6~\mathrm{km}$ in diameter and moves at $v = 35.02~\mathrm{km}/\mathrm{s}$, it would take
$$ t=\frac{d}{v} = \frac{12,103.6~\mathrm{km}}{35.02~\mathrm{km}/\mathrm{s}} = 345.62~\mathrm{s} = 5~\mathrm{min}~46~\mathrm{s} $$
for Venus to appear totally in front of the Sun. This time would be from the edge of Venus being against the edge of the Sun to when the opposite edge of Venus is "in touch" with the same edge of the Sun.
But now I think this in reality takes more than just $6$ minutes (about $20$ minutes). If this is true, then why does this measurement not agree with theory?
 A: Your calculation looks like it would be correct for an observer who was stationary with respect to the Sun. However, the Earth is also moving, and I think this accounts for at least most of the discrepancy.
Earth's orbital period is about 365 days while Venus' is 225, so the angular velocity of Earth about the Sun is 0.625 times that of Venus. Now, draw an imaginary line from an observer on Earth to the edge of the Sun.  Imagine that Venus is a disk rather than a sphere. Assuming Earth and Venus are moving parallel to one another (which isn't quite true but is probably close enough), we can say that the intersection between this line and this disk moves at about $35.02 \times (1-0.625)$ km/s across the surface of the disk. Thus, the time in which Venus only partially eclipses the Sun should be 
$$
\frac{12,103.6~\mathrm{km}}{35.02~\mathrm{km}/\mathrm{s}\times (1-0.625)} = 921.65~\mathrm{s} = 15~\mathrm{min}~22~\mathrm{s}.
$$
That's not quite 20 minutes, but it's a lot closer than 6 minutes.
As Chris White comments, most of the rest of the discrepancy can probably be accounted for by noting that the disk of Venus doesn't travel straight through the centre of the disk of the Sun, and consequently it intersects the edge of the sun at an angle rather than perpendicularly, as shown in the image below. This means that the disk of Venus has to travel more than its diameter between the first and second contacts between the edges of the two disks.

A: There are three main reasons.
1) While Venus is orbiting the Sun at 35.02 Km/s, the Earth is also orbiting the Sun in the same direction [both clockwise] at 29.78 Km/s. This factor will decrease the relative transit velocity of Venus as seen from earth.
2) Venus is travelling at 35.02 Km/s in an elliptical orbit. Hence the actual distance traveled by Venus during the transit will be slightly more than its diameter because it is travelling on a curved path and not a straight line. This factor will increase the actual transit distance covered by Venus. However the contribution of this is negligible and can be ignored except for high precision calculations.
3) There will be a small but measurable impact because of the surface velocity of Earth's rotation at 0.434 Km/s (at the equator) about its axis. Notice that the tangential velocity of an observer on Earth due to the rotation of the Earth about its axis will be in opposite direction to the tangential velocity of both the Venus and Earth around the Sun. This factor will increase the relative transit velocity of Venus as seen from earth.
My calculation, using Kepler's law differ slightly from that of Nathaniel but it is  essentially same in spirit. We obtain the transit time of 19 mins 56 seconds which is accurate enough.
$$
t \approx \frac{D_v}{V_v\{1 - (T_v/T_e)^{2/3}\} + v_e} = 19 \min 56 \sec
$$
where
$D_v$ = Diameter of Venus,
$V_v$ = Orbital velocity of Venus,
$V_e$ = Orbital velocity of Earth,
$T_v$ = Orbital period of Venus,
$T_e$ = Orbital period of Earth,
$v_e$ = Rotation velocity of Earth.
