Since CASSANDRA-7423 (C* 3.6), top-level UDTs (and tuples?) can be unfrozen.
However, the driver still hard-codes DataType.isFrozen to true.
Note: the fix will only apply to user types returned by cluster.getMetadata(). The native protocol does not carry that information for query metadata (ResultSet.getColumnDefinitions(), PreparedStatement.getVariables()...), and it's probably of little use in that case anyway.
Tuples are still always frozen.