Also, hier mal ein anderer Vorschlag:

Begründung:
Interfaces müssen realisiert werden, daher können nicht einfach normale Assoziationen als Verbindungen gewählt werden.
Die Kompositionen sind erforderlich, da Muffins nach diesem Rezept zwangsläufig aus den angegebenen Komponenten bestehen und die Entitäten aus den die Muffins erstellt wurden ausschließlich in diese Muffins eingegangen sind bzw. eingehen können. Außerdem weist die Komposition darauf hin, dass mit dem Löschen der Muffins (Verzehr) auch die einzelnen Bestandteile mitgelöscht werden.
Ich würde das ganze sogar noch ein bisschen weiter treiben und abstrakte Klassen für die Implementierung der Schnittstellen hernehmen. Zumindest für die allgemeingültigen Teile wie die Attribute. Der Zustand ist an sich keine spezielle Eigenschaft von Butter oder Pflanzenöl, sondern eine allgemeine Eigenschaft von Fett bzw. abstraktem Fett. Das kann man sich leicht anhand der Begriffe "gut" "schmierig" "ranzig" vor Augen führen.
Ich würde außerdem davon absehen, das Mengenattribut in den konkreten Klassen zu realisieren, da die Menge eigentlich keine Eigenschaft ist, welche charakteristisch für Butter oder Milch ist, sondern eine Eigenschaft, welche aus den Anforderungen an die Herstellung von Muffins erwächst. Aber das ist eine Designfrage. Es läßt sich zweifelsohne auch wie dargestellt realisieren, allerdings habe ich hierbei eher das Gefühl ein Objektdiagramm denn einem Klassendiagramm zu betrachen.
Und ja, natürlich sehe ich ein, dass meine abstraktere Formulierung die Didaktik fürs Kochen wesentlich erschweren würde und vielmehr zur schlechten Lesbarkeit der Rezepte beitragen würde. Ich finde die Idee der Darstellung an sich schon richtig gut und gelungen. Gibt es in dem Buch auch Ablaufdiagramme zur Beschreibung des Zubereitungsvorgangs also der Methode "machen"? Oder vielleicht Aktivitätsdiagramme?
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.