It just seems like the PWM signal will trigger the SSR at a random point in the line AC waveform, and then even if the PWM signal opens during that half cycle the SSR won't actually open until the zero crossing. Maybe I'm just not understanding how the circuit works.
no, that is correct. you are just thinking too hard about how much it matters that the AC waveform and the PWM pulse are not synchronized. it dosent matter that much. the AC signal will cross zero 120 times per second, so the SSR will be alowed to turn off at any of 120 points over the course of a second. even if the PWM OFF signal was triggered half way thru one wave, its only going to add an additional four-1000ths of a second to the SSR ON time, until it hits zero and turns off.
it only starts to make an actual difference if you are driving the SSR at hundreds of hertz (which you shouldnt be doing, anyway). you ideally want the PWM signal running at only a few hz, and just vary the durration accordingly. in other words- to get 75% PWM, turn the SSR on for 750ms, and off for 250 (1hz). or on for 375ms / off for 125ms (2hz). you should not be switching it like 7.5ms on / 2.5ms off (100hz), for example.
if you are doing 750ms on / 250ms off, then you can see that zero-crossing wont make any noticable difference (754ms / 246ms, or 748 / 252- is close enough to 75%)