Ты запутался в this'ах, а еще разберись в области видимости функции...
Внутри анонимной функции this'ом является экзепляр xml, а экзепляр объекта punkt внутри данной функции не будет виден.
И вообще ЗАЧЕМ ты экзепляру объекта punkt присваиваешь экзепляр класса?
В общем решение может быть таким:

Код:
private var menu_db:Array = new Array();
private var frame_Up:MovieClip;
private var xml:XML;
private function getXMLDaten(xml_weg:String):Void {
xml.onLoad = Proxy.create(this, checkLoadingResult);
xml.load(xml_weg);
}
private function checkLoadingResult():Void {
if(xml.loaded) {
// твой код
initMenu(arr);
}
}
private function initMenu(arr:Array):Void
{
}
Создаешь дополнительный класс Proxy, который расширяет область видимости

Код:
class Proxy
{
public static function create(obj:Object, func:Function):Function
{
var arg:Array = arguments.slice(2);
var new_func:Function = function()
{
return func.apply(obj, arg);
};
return new_func;
}
}
Proxy позволяет передавать параметры, но в нашем случае можно было использовать встроенный класс mx.utils.Delegate!
В любом случае это "гавнокод", лучше разберись в принципах ООП, а потом пиши код в классах.