My textarea starts off with no width (as its hidden), so I changed the width of the shadow div to be done inside the update function:
shadow.width($this.width());
It seems to perform alright, but I don't have any performance measurements or such.
Oh, and I made it work with Zepto with simply:
}(window.jQuery || window.Zepto));
Thanks for such a Zepto-compatible lib!