Will you please look at my bug report, too? It was marked as a duplicate of this, but it is much more informative and also tells bugs about dual wielding with other items such as bows, tools, and eyes of enders.
I tested it in the latest snapshot (34a). Both shields are protecting you from damage (tested using skeletons on both shields). Even though both shields block, only one of the shields get damaged for it [MC-86655] is not completely this bug, they are related though. Only the main hand shield gets damaged, while indeed both shields block you from damage.
15w36c You can also block with the offhand shield first by holding the right mouse button on an empty slot and while that switching to a slot with a shield
The following is based on decompiled version of Minecraft 1.11 using MCP 9.35 beta. All method and class names are the names used in the decompiled version.
The reason why this happens is because the method net.minecraft.client.renderer.entity.RenderPlayer.setModelVisibilities(AbstractClientPlayer) is not setting the ArmPose's based on the used item, but instead based on what the items in both hands can do. The following shows how this could be solved using the existing methods net.minecraft.entity.EntityLivingBase.getActiveItemStack() and net.minecraft.entity.EntityLivingBase.getActiveHand().
They are duplicates because the RenderPlayer is setting the pose to what can be done with both items. For example with MC-86197 the one item has eating as action and the other item has blocking as action. Both poses would be diplayed, but as eating has no arm pose only blocking is displayed.
confirmed, but only when both are occupied by a sword