Ну вот смотрите.
Допустим что в начале bool = false.
Мы создали новый MicrophoneList, перешли к условию. Условие не выполнилось, записали (ура!) MicrophoneList в микро. Установили bool = true; Зашибись.
Второй акт: создали
новый MicrophoneList (!)
перешли к условию и оно выполнилось, bool == true

Говорим: микро, удали наш
новый MicrophoneList !
А микро такой: какой такой новый микрофонЛист? Нет у меня никакого нового. Есть правда старый, но вам же его не надо удалять, да?
Добавлено через 5 минут

Код AS3:
private var _bool:Boolean=false;
private var _myShapeExample:MicrophoneList;
private function microClick(e:Event):void
{
trace(_bool);
// сначала надо удалить старый, а потом уже создавать новый
//var MyShapeExample:MicrophoneList = new MicrophoneList();
if(_bool)
{
micro.removeElement(_myShapeExample);
}
_myShapeExample = new MicrophoneList();
micro.addElement(_myShapeExample);
_bool = true;
}