Cannot get markdown to render inside slim templates

I am hitting major roadblocks on my first middleman project with a quickly advancing deadline, so any help would be highly appreciated.
I use slim as the templating language, but when trying to use markdown formatting within the template, only basic markdown will be rendered, e.g.:

$ cat index.slim
....
snip
....

p == lorem.words 2

markdown:
  ## foo
  Odio quo ipsam asperiores vel dicta ut est perferendis.     

  Consequatur dolore exercitationem dignissimos hic rerum

  ==highlight==

  - listitem
  - anotheritem

  == lorem.words 2

This is rendered into:

  <p>
    eum similique
  </p>
  <h2>foo</h2>
  
  <p>Odio quo ipsam asperiores vel dicta ut est perferendis.     </p>
  
  <p>Consequatur dolore exercitationem dignissimos hic rerum</p>
  
  <p>==highlight==</p>
  
  <ul>
  <li>listitem</li>
  <li>anotheritem</li>
  </ul>
  
  <p>== lorem.words 2</p>

As you can see, neither line breaks (normally forced by two or more whitespace appended to a line), nor the ==highlight== tag are properly parsed in the markdown block.

The same goes for the lorem-helper function, which is simply displayed verbatim inside the markdown block.

Inside my config.ru I have:

set :markdown_engine, :redcarpet
set :markdown, :fenced_code_blocks => true, :smartypants => true, :with_toc_data => true, :autolink => true, :underline => true, :hard_wrap => true, highlight: true

Which strangely seems to not get picked up.

I tried to debug the issue with pry and middleman console:

[1] pry(#<Middleman::Application::MiddlemanApplication1>)> Redcarpet::Markdown.new(Redcarpet::Render::HTML, highlight: true,).render("==foo==")
=> "<p><mark>foo</mark></p>\n"

So calling Redcarpet as a renderer directly works.
I find this highly confusing. Is this a bug? Am I missing a major ingredient to make this work?

Maybe someone can help me find out what might be the issue here?

On a tangential note: Is there a irc help channel somewhere? I looked on freenode but couldn’t find anything there…