The height is not adjusted because at creation time, the textarea is invisible (because it is in a collapsed container) and therefore height calculations which rely on the visible height cannot be applied.
The solution is to manually call the height adjustment once the textarea becomes visible. I forked your fiddle to demonstrate the solution. The relevant change is to listen for the expand event of the container (this is where the textarea becomes visible) and then to trigger the height calculation by simulating a key press:
$('fieldset').on("collapsibleexpand", function(event, ui) { //Listen for the event
$(this).find("textarea").keyup(); //simulate key press
});