Timezone issues - display current wp time

I am having an issue with displaying the current time of Wordpress on my website. When I switch the timezone it messes up different parts Appointments+

1. I would like to display the current time of my Wordpress (that is what Appointments+ work with). I set my current timezone in General settings to NY/EST.
So far so good.

When I use the following function, it pulls the current server time (UTC):

function displaydate(){
return date(get_option('time_format'));
}
add_shortcode('date', 'displaydate');

I use the following code and it displays the current wordpress time/EST, but starts messing up things in Appointments+.

function displaydate(){
date_default_timezone_set('America/New_York');
return date(get_option('time_format'));
}
add_shortcode('date', 'displaydate');

Here is where things get interesting:

2. When I use the above code to change the timezone in that function, appointments+ gets many errors but also works.

The log (appointments-> settings -> log) is accurate! (displays EST and not UTC)

The hours displayed looks correct, but when a time slot is clicked on, the confirm time is wrong Screenshot

All I am trying to do is what your website does Here without it affecting the Appointments+ plugin. This was a suggested to me as this plugin does not currently have any timezone support.