So I got it to work! But there was a catch. When I first entered the altitude constraint 3500’ @ DAVKO and enabled VNAV it didn’t work, just like in my OP.
However, by accident, I went in and cleared the altitude constraint, then re-entered it, and BOOM, it worked! Very strange. I’ll try to repeat this on future flights to see if I can get a consistent process.
