There are a couple of ways you can get the label to appear in the cart as well. I think one of the easiest would be to use some js to set the label of the selected extra length to another hidden form element, then you can bind this hidden form element to a column in your cart that will hold the name of the extra length option.
The js to do this is not very complex, basically you just set the value of the hidden form element to be the text of the selected index for the select list. I think it is cleanest to use a function for this. Here is an example form with a select list and a text input to demonstrate how you can do this.
<form name="form1" id="form1" method="post" action="">
<select name="select1" id="select1" onchange="setValue(this.options[this.selectedIndex].text, 'text1');">
<option value="0">none</option>
<option value="1">one</option>
<option value="2">two</option>
<option value="3">three</option>
</select>
<input type="text" name="text1" id="text1" />
</form>
And here is the js that will make this work.
<script type="text/javascript">
function setValue(theVal, theInput){
document.getElementById(theInput).value = theVal;
}
</script>
You can even use this same function call to do this, you would just need to update the name of the hidden form element in the function call.