So, I managed to boot to Monterey now and I did installed Mojave on another partition on the same SSD. Weirdly, after I put the EFI folder into it's place, opencore can boot just fine but it doesn't seems to read my Mojave partition. Only the one that I Installed Monterey on is listed.
I used apfs in both. The only way I can boot into Mojave is by using my opencore USB installer.. does that mean that the dual booting osx should be done using different disks?
Thanks. It turns out that I just need to add no restriction on apfs setting on opencore. Now it shows all the partitions.