Die 2 Dioden waren in der Versorgungsspannung gedacht. Mit ca. 0,7 V je Diode kommt man so auf die etwa 3,6 V. Da es "nur" die Versorgunsgspannung ist, ist da die Geschwindigkeit noch kein Problem. Mit 3,6 V könnten aber 16 MHz etwas viel für den Mega8 sein, selbst 12 MHz sind beim Mega8 noch etwas mehr als für 3,6 V vorgesehen. Beim neueren Mega88 sind bei 3,6 V (oder auch 3,3 V) die 12 MHz noch gerade innerhalb der Spezifikation.

Die Umsetzung der Signal könnte so ähnlich gehen, es fehlt dann aber noch ein Widerstand nach GND auf der 3,3 V seite. Es geht aber besser und einfacher:
Je Signalleitung eine Diode (bevorzugt Schottky, die 1N4148 wird aber auch noch gehen) mit der Kathode zur 5 V Seite und einen Pullup Wiederstand (z.B. 1 K) zur Spannung der Zielschaltung (z.B. 3,3 V). Das geht dann bis etwa 2 V Versorgungsspannung bei der Zeilschaltung. Die andere Richtung geht direkt, je nach µC Exemplar bis etwa 3,2 V (worst case) bzw. ca. 2,8 V als typischer Fall. Das schöne daran ist, das man die Schaltung unverändert für etwa 3 V bis 5 V im Ziel-Systeme nutzen kann. Viel langsamer wird das Signal durch die Diode nicht. Die ISP Signale sind in der Regel relativ langsam. Damit auch ein µC mit dem Default 1MHz RC Takt noch geht, sollte der Takt höchstens etwa 240 kHz sein.