Though this is not obvious to detect from the pom file, but you are running your tests with version 4.0-beta-2 due to automatic version detection by maven.
This version is actually broken and creates incorrect xml.
To switch back to 3.7.3 which works for the xml, you have to add the version line in your pom:
<artifactId>jbehave-maven-plugin</artifactId>
<version>${jbehave.core.version}</version>
<executions>
If the version line is ommited, maven will look for the most current version of the plugin that is available (which is 4.0-beta-2 currently) and load the dependencies with the same version (jbehave-core-4.0-beta-2.jar).
Even though the build process will use 3.7.3 (and e.g. Eclipse will display that as Maven Dependencies and run the unit test with it), the tests are then run with 4.0-beta.
I think there were a few errors with xml fixed in or before 3.7, which version are you currently using?
Maybe we missing some cases though.