It seems that OP_GREATERTHANOREQUAL is returning true if the first value "2" is greater than or equal to the value pulled from the alt stack, which for a "0 0" unlock script is "0". Either OP_GREATERTHANOREQUAL needs to be reversed or the script should end with "OP_FROMALTSTACK OP_2 OP_GREATERTHANOREQUAL". To be fair Electrum is using this script exactly as defined by the paper about it.
It seems that OP_GREATERTHANOREQUAL is returning true if the first value "2" is greater than or equal to the value pulled from the alt stack, which for a "0 0" unlock script is "0". Either OP_GREATERTHANOREQUAL needs to be reversed or the script should end with "OP_FROMALTSTACK OP_2 OP_GREATERTHANOREQUAL". To be fair Electrum is using this script exactly as defined by the paper about it.