If you don't care whether or not you get the day parameter without a value, you can just do this:
RewriteRule ^schedule(/(([a-zA-Z0-9-]+)/?)?)?$ index.php?_orn_shows_action=view-schedule&day=$3 [NC,QSA,L]
This would capture these variations:
/schedule
/schedule/
/schedule/day
/schedule/day/
If you want to make sure not to get an empty day parameter, do this:
RewriteCond $3 ="" [OR]
RewriteCond &day=$3 ^(.*)$
RewriteRule ^schedule(/(([a-zA-Z0-9-]+)/?)?)?$ index.php?_orn_shows_action=view-schedule&day=$3 [NC,QSA,L]
Finally, if you don't expect to get a query string from the browser on these URLs, I would drop the QSA tag, since someone going to /schedule/monday?day=1 would end up setting day equal to 1, instead of to "monday". There's ways to prevent that, but if you don't need the query string, it's easier just to ignore it.