The method part which is processing Tuple.Create method call has a loop that indexes expression.Arguments[i] while iterating i = 1..Count (inclusive). MethodCallExpression.Arguments is zero-based, so this will throw ArgumentOutOfRangeException when i == expression.Arguments.Count. Iterate 0..Count-1 (and adjust the tuple item index passed to GetItemSerializer) to avoid runtime failures when creating tuple serializers.
Need to investigate and fix the possible issue.