There is no asterisk after your $UserObject. While you are still testing, you can output to the console so you validate the search is valid, something like this:
ForEach ($UserObject in $UserObjects) { $filter = "*{0}*" -f $UserObject "Searching for {0}" -f $filter Get-ADuser -filter {surname -like $filter} | FT Name }