Through pursuing this problem myself I discovered that appendTo
has to be set before the dialog is opened. The same seems to apply to setting (or modifying) the source property.
$("#mycontrol").autocomplete({appendTo:"#myDialog",source:[..some values]})
$("#mycontrol").autocomplete("option","source",[...some different values]) // works
// doesn't work if the lines above come after
$("#myDialog").dialog("open")
This might just be a byproduct of what dialog open does, or not correctly addressing the element. But the order things happen seems to matter.