Все правильно, в первом случае createChildren (attachSkin для скинируемых компонентов) еще не вызван. По-сути вам надо было сделать так:

Код AS3:
private var _url:String;
private var _urlChanged:Boolean = false;
public function load(url:String):void
{
_url = url;
_urlChanged = true;
invalidateProperties();
}
override protected function commitProperties():void
{
super.commitProperties();
if (_urlChanged)
{
txt.text = _url;
}
}