Это работает:
$('body').append($("<script>alert('Hi!');<\/script>")[0]);
Кажется, что jQuery делает что-то умное со сценариями, поэтому вам нужно добавить элемент html, а не объект jQuery.