Не за что.
Маленькое уточнение - это хорошо работает только если один монитор. Вообще правильнее эмулировать максимизацию окна следующим образом:
SetBounds(Screen.DisplayFromRect(Bounds).WorkAreaRect);
Вы знаете, я лично такие замеры не производил.
Я пользовался здравой логикой: поменьше анимаций, и поменьше объектов в стиле.
Нет, вы не один.
Если вы действительно хотите получить ответ на свой вопрос - сделайти сами такой тест производительности.
Накидайте в стиль то что вы описали, создайте 100500 объектов и замерьте скорость.
Сообщество скажет вам спасибо, да и вы получите профит!
Так происходит потому что вы делаете проверку с помощью ShowMessage. При этом панель теряет фокус и любое движение мыши над ней снова вызывает OnMouseEnter.
Проверяйте так: добавьте на форму компонент TText и в обработчике панели OnMouseEnter напишите:
text1.Text:=text1.Text+#13+'asdasd';
Вы увидите, что событие срабатывает корректно