Erstens: MySQL ist richtig
Zweitens: die Abfrage endet mit "WHERE {Book}.Title LIKE '%%$value%%'"
Was mit komisch vorkommt ist, dass das Abfrageverhalten abhängig ist von einem doppelten %-Zeichen. Das habe ich nirgends dokumentiert gefunden.
Setze ich den Suchwert zwischen einfache %-Zeichen, so ist das Abfrageverhalten wie beschreiben. Wird der Anfang des Suchstring klein geschrieben wird nichts gefunden, wird er Groß geschrieben, so wird der Feldinhalt gefunden.
Setze ich den Suchwert zwischen doppelte %-Zeichen, so funktioniert die Abfrage wie gewünscht. Egal wie ich den Suchstring schreibe, es wird immer der Datensatz gefunden.
Wo finde ich die Angabe zur Collation? Ich glaube was mit utf8?