Here's how I approximated an answer:
We know player-2 usually wins. The expected value of player-2 after 9 games is 63, just over 60. So the expected number of turns the game will last is about 9.
Let's consider another version of this game which is played for 9 turns exactly and the winner is the one who got the higher score.
How is the score of each player distributed after 9 games? We need to get the distribution of a sum of 18 random variables (because 9 turns correspond to 18 dice throws). The distribution of a sum of a random variable is exactly the convolution of the distributions. This can be efficiently computed by the convolution theorem which says: compute the Discrete Fourier Transform of each of the distributions, multiply the resulting distributions element by element, then compute the Inverse Discrete Fourier Transform of the resulting distribution.
I computed that in python. Now that we got the distribution of the scores for each player after 9 turns. To compute the probability player-2 wins, I computed the cumulative distribution of the score for each player (i.e: the probability of getting score >= i for each i). Now I just had to sum of each score i, the probability of player-1 getting score < i, multiplied by the probability of player-2 getting score >= i.
The probability for a draw is computed similarly.
Repeating the calculation I get about: 81%,16%,3% (but it's just an approximation anyway).
To calculate the accurate numbers you should do this calculation for any number of turns, and then compute the average of these numbers, weighted by the probability of the game to end in any specific number of turns.
But I expect the calculation for 9 turns to give a very good approximation, because the distribution of the number of turns is centered around 9 and I expect to get similar results of 8 or 10 turns.
Some notes in case you're not familiar with convolutions and Fourier Transform:
Look at a random variable X over some finite probability space of n elements. Think of X as a vector of n real numbers (representing its distribution). Then the operator T, defined as T(Y)=X+Y for any Y (this is not element-wise addition. this is addition of random variables, also called convolution). Then T is a linear operator in $\mathbb{R}^n$. It happens to be diagonizable. The Discrete Fourier Transform is just a change of basis, after which T is a diagonal operator. It may be a little surprising, but this basis does not depend of X (although T does). The i,i element in the diagonal of the matrix representing T in this new basis happens to be Pr(X=i). Computing the compositions of diagonal operators in very easy - just multiply the diagonals element-wise. This is the justification for the convolution theorem. After you're done adding random variables in this new basis, just return to the original basis (i.e: do the inverse Fourier transform) and get the desired probability vector of the addition of all the random variables you added.
Here's how the probabilities are calculated in python (I'm supplying all the routines you need):
def dft(x):
N = len(x)
ret = [0]*N
for k in range(N):
for n in range(N):
ret[k] += x[n]*math.e**((-2*math.pi*(1j)/N)*k*n)
return ret
def idft(x):
N = len(x)
ret = [0]*N
for k in range(N):
for n in range(N):
ret[k] += x[n]*math.e**((2*math.pi*(1j)/N)*k*n)
ret[k] /= N
return ret
def mul_vec(x1,x2):
return [a1*a2 for (a1,a2) in zip(x1,x2)]
def pow_vec(x,n):
ret = [1]*len(x)
for i in range(n):
ret = mul_vec(ret, x)
return ret
def pad(x,n):
return x+[0]*(n-len(x))
p1_probs=idft(pow_vec(dft(pad([0]+[1./6]*6,200)),18))
p2_probs=idft( mul_vec(pow_vec(dft(pad([0]+[1./6]*6,200)),9) , pow_vec(dft(pad([0]+[1./4]*4,200)),9) ) )