Lo más probable es que su displayWinesList()
la función hace eco de sus datos en lugar de devolverlos.
Puede modificar su función para devolver los datos o dejarla como está y usar el almacenamiento en búfer de salida para capturar los datos:
$to = "[email protected]";
$subject = "WineStore Query";
ob_start();
displayWinesList($connection, $query,$region_name, $wine_type, $price);
$message = ob_get_clean();
$message = '<html>'.$message.'</html>';
$from = "[email protected]";
…
Sin embargo, para estar seguro, publique su displayWinesList()
función.