学校には朝8時までに行けばいい。 is not "double negative". It's just an affirmative.
The set phrase ~ばいい is made with ~ば conditional + いい, so it literally means "it is good if~". In my example sentence, 学校に(は)朝8時までに行く is a sufficient condition; "it's enough if I'm/you are/they are at school by 8 a.m.". Thus, it's closer to "can".
On the other hand, 方/ほう means "one side" in Aほうがいい, so this set phrase always connotes that A is better than "not A"/the other side. Therefore, 学校には朝8時までに行くほうがいい is closer to "should". This is the main difference between ~ばいい and ~ほうがいい.
学校には朝8時までに行けばいいのに。 indeed has a nuance of blame, but this is used when the addressee is going to go to school earlier than 8 a.m., something like "Why are you going to go to school so early, despite being enough at school by 8 a.m.?".
Also, 学校には朝8時までに行けばいい。 is the future tense or a habitual action. This cannot be used for a past event.