Flying imo is less of a hassle if you are short of time.
When flying, your US immigration is done in Canada (at Pearson. Not sure if you plan to fly Porter from the city airport).
Other than that, If you are up for driving, it is manageable to drive same day (it can be an 8-10 hr drive based on traffic and stops). If driving through Niagara you can check https://www.niagarafallsbridges.com when you are about 30-45 mins away from crossing and choose one that has less traffic
Flying sometimes is cheaper if you fly from BUF to NYC, so if you want to have immigration at land border crossing that’s an option.
I have found driving is easier and more convenient when splitting the trip and staying overnight at Syracuse (that’s roughly half way). So I can leave after evening rush hour, and reach Syracuse ~11pm, next day it’s a comfortable 4 hr drive to NYC or back to Toronto (and you’ll reach the metro area after morning rush hour). This way, I never hit traffic anywhere, including the bridge crossing (but each time I drove across the border it was either mid day weekday or late night weekend).