That's why you are setting it on field called "Publishable".
It is only enabling / disabling publishing / unpublishing of that particular version in your defined time / date interval.
You still need to "publish" item / version to publish / unpublish it. I was also confused first time using this feature.
In order to make it automatic, you need to have workflow set or set up publishing agent or use Sitecron to do that for you.
Setting Publishing agent
By default Publishing agent is disabled:
<agent type="Sitecore.Tasks.PublishAgent" method="Run" interval="00:00:00">
<param desc="source database">master</param>
<param desc="target database">web</param>
<param desc="mode (full or incremental)">incremental</param>
<param desc="languages">en, da</param>
</agent>
To enable it just set interval, language and your preferred mode:
<agent type="Sitecore.Tasks.PublishAgent" method="Run" interval="00:00:30">
<param desc="source database">master</param>
<param desc="target database">web</param>
<param desc="mode (full or incremental)">incremental</param>
<param desc="languages">en, da</param>
</agent>
Agent will look into publishable settings and does publishing / unpublishing for you.