bpy.ops.armature.duplicate_move() not creating a duplicate
Try this:

import bpy

arm = bpy.data.objects['Armature']
bpy.ops.object.mode_set(mode='EDIT')
bone_to_duplicate = arm.data.edit_bones['Bone']
arm.data.edit_bones.active = bone_to_duplicate
arm.data.edit_bones.active.select = True
bpy.ops.armature.duplicate_move()