Nakonec jsem stáhl zdrojový kód pro MySql Connector / .NET a zjistil jsem, že pokud MySqlCommand.Connection.Settings.IgnorePrepare =true (což je výchozí nastavení!), pak volání Prepare není žádný problém.
Způsob, jak to vyřešit, je explicitně nastavit IgnorePrepare na hodnotu false v připojovacím řetězci. To lze provést poměrně snadno pomocí MySqlConnectionStringBuilder pomocí následujícího fragmentu kódu:
MySqlConnectionStringBuilder connBuilder = new MySqlConnectionStringBuilder();
// .. set up the rest of your connection
connBuilder.IgnorePrepare = false;
MySqlConnection conn = new MySqlConnection(connBuilder.ToString());